启动时候出现下面的故障提示:

# service postgresql start
正在初始化数据库:                                         [失败]
启动 postgresql 服务:                                     [失败]

 查看/etc/init.d/postgresql文件,尝试手动初始化数据库:

[root@localhost ~]# su – postgres
-bash-3.00$ initdb
属于此数据库系统的文件宿主为用户 "postgres".
此用户也必须为服务器进程的宿主.
数据库簇将带有 locale zh_CN.GB18030 初始化.
initdb: 无法为 locale "zh_CN.GB18030" 找到合适的编码
带 -E 选项重新运行 initdb.
请用 "initdb –help" 获取更多的信息.

故障应该和系统的locale设定有关,使用下面的命令解决:

-bash-3.00$ initdb –no-locale
属于此数据库系统的文件宿主为用户 "postgres".
此用户也必须为服务器进程的宿主.
数据库簇将带有 locale C 初始化.

修复已存在目录 /var/lib/pgsql/data 的权限 … 成功
创建目录 /var/lib/pgsql/data/global … 成功
创建目录 /var/lib/pgsql/data/pg_xlog … 成功
创建目录 /var/lib/pgsql/data/pg_xlog/archive_status … 成功
创建目录 /var/lib/pgsql/data/pg_clog … 成功
创建目录 /var/lib/pgsql/data/pg_subtrans … 成功
创建目录 /var/lib/pgsql/data/base … 成功
创建目录 /var/lib/pgsql/data/base/1 … 成功
创建目录 /var/lib/pgsql/data/pg_tblspc … 成功
选择默认最大联接数 (max_connections) … 100
选择默认共享缓冲区大小 (shared_buffers) … 1000
创建配置文件 … 成功
在 /var/lib/pgsql/data/base/1 中创建 template1 数据库 … 成功
初始化 pg_shadow … 成功
启动不限制系统表行大小 … 成功
初始化 pg_depend … 成功
创建系统视图 … 成功
加载 pg_description … 成功
创建字符集转换 … 成功
对内建对象设置权限 … 成功
创建信息模式 … 成功
清理数据库 template1 … 成功
拷贝 template1 到 template0 … 成功

警告: 为本地连接启动了 "trust" 认证.
你可以通过编辑 pg_hba.conf 更改或你下
次运行 initdb 时使用 -A 选项.

成功. 您现在可以用下面的命令运行数据库服务器:

   postmaster -D /var/lib/pgsql/data
或者
   pg_ctl -D /var/lib/pgsql/data -l logfile start

退出到root用户,重新运行服务:

[root@localhost ~]# service postgresql start
启动 postgresql 服务:                 [  确定  ]

推荐:PostgreSQL教程

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » postgresql初始化失败