在ubuntu机器上安装GitLab时使用 apt install gitlab-ce个 我收到这条消息

PG::DuplicateSchema: ERROR:  schema "gitlab_partitions_dynamic" already exists
/opt/gitlab/embedded/service/gitlab-rails/db/migrate/20211202041233_init_schema.rb:7:in `up'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/connection_proxy.rb:121:in `public_send'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/connection_proxy.rb:121:in `block in write_using_load_balancer'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/load_balancer.rb:127:in `block in read_write'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/load_balancer.rb:198:in `retry_with_backoff'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/load_balancer.rb:116:in `read_write'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/connection_proxy.rb:120:in `write_using_load_balancer'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/connection_proxy.rb:72:in `transaction'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database.rb:369:in `block in transaction'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database.rb:368:in `transaction'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/migrations/lock_retry_mixin.rb:36:in `ddl_transaction'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/migrations/pg_backend_pid.rb:15:in `block in with_advisory_lock_connection'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/migrations/pg_backend_pid.rb:12:in `with_advisory_lock_connection'
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/db.rake:117:in `configure_database'
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/db.rake:95:in `block (3 levels) in <top (required)>'
/opt/gitlab/embedded/bin/bundle:23:in `load'
/opt/gitlab/embedded/bin/bundle:23:in `<main>'

我已经判断了迁移文件,但它不包含任何重复的模式创建.我也试图登录到PostgreSQL,但没有数据库、表或模式与GitLab相关联.也许它使用了数据库的其他实例.使用GitLab-ce或GitLab-ee包都会出现问题.

推荐答案

我也试图登录到PostgreSQL,但没有数据库、表或模式与GitLab相关联.

可能您没有登录到正确的数据库:您看到的错误消息PG::DuplicateSchema: ERROR: schema "gitlab_partitions_dynamic" already exists表明GitLab正在try 在PostgreSQL中创建一个已经存在的模式.

PostgreSQL中的\dn命令应该列出所有模式.如果您找不到该架构,则可能是GitLab正在连接到不同的PostgreSQL服务器或数据库.

So check the database GitLab is using: GitLab stores its database configuration in /etc/gitlab/gitlab.rb. Look for gitlab_rails['db_'] configuration values, especially gitlab_rails['db_database'] (which should be gitlabhq_production by default), gitlab_rails['db_host'], and gitlab_rails['db_port']. These should tell you which PostgreSQL server and database GitLab is using.
If not, check if you see a config/database.yml. Or en environment variable referencing a PostGreSQL database.

Postgresql相关问答推荐

Docker化的PostgreSQL:FATAL:用户&postgres的密码身份验证失败

如何诊断字符编码问题

在Postgres中如何连接具有相同名称列的表并更改列名称?

如何在docker-compose中使用docker secrets设置ConnectionString?

如何查找具有包含花括号内值且遵循模式的属性的顶点?

GORM 不会创建 many2many 关联

如何从 .sql postgresql 备份恢复单个表?

我如何在docker中备份数据库

如何将 DELETE 的返回值插入到 postgresql 中的 INSERT 中?

使用 try/except 与 psycopg2 或with closing?

如果 PostgreSQL 数据库中存在,则删除表

postgresql:致命:password authentication failed for user "douglas"

在 PostgreSQL 数组中查找值的位置

如何从另一个脚本运行 postgres sql 脚本?

获取 psycopg2 count(*) 结果数

postgresql 查询以显示用户的组

在 Postgresql 中按窗口函数结果过滤

如何从 CSV 为 PostgreSQL 副本生成模式

PG::ConnectionBad FATAL:role "Myname" does not exist

PostgreSQL regexp_replace() 只保留一个空格