温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何正确的启动与停止postgresql

发布时间:2021-01-05 14:30:26 来源:亿速云 阅读:653 作者:Leah 栏目:开发技术

这篇文章将为大家详细讲解有关如何正确的启动与停止postgresql,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

启动和停止数据库服务器

service 方式

service postgresql-10 start
service postgresql-10 stop
service postgresql-10 status

pg_ctl 方式

pg_ctl start -D [ data 所在路径 ]
pg_ctl stop -D [ data 所在路径 ]

三种形式:-m 指定模式

smart 模式:会等待活动的事务提交结束,并等待客户端主动断开连接之后关闭数据库服务

fast 模式:会回滚所有的活动的事务,并强制断开客户端的连接然后关闭数据库(默认就是使用fast 相当于Oracle 中的 immediate模式关闭)

immediate 模式: 会立即终止所有服务器进程,当下一次数据库启动的时候会首先进入恢复状态( 相当于使用 kill 工具杀死进程[此方式不会干净的关闭数据库且会造成数据丢失] )

pg_ctl status -D [ data 所在路径 ]

使用 postmaster postgres 程序启动数据库

/usr/pgpsql-10/bin/postgres -D [ data 所在路径 ]
kill -sigterm `head -1 /usr/pgpsql-10/data/postmaster.pid`

如果要在操作系统启动时就启动PG,可以在/etc/rc.d/rc.local 文件中加以下语句:

/usr/pgsql-10/bin/pg_ctl start -l /usr/pgsql-10/log/pg_server.log -D/usr/pgsql-10/data

补充:postgresql 服务无法启动,日志中报如下错误

1、postgresql 服务无法启动,日志中报如下错误,磁盘空间足够。

无法找到来自源 PostgreSQL 的事件 ID 0 的描述。本地计算机上未安装引发此事件的组件,或者安装已损坏。可以安装或修复本地计算机上的组件。

1、使用pg_controldata 查找 nextoID 和 nextXID

2、重置事物日志

pg_resetxlog -o nextOID -x NextXID -f pgdata的目录

重启数据库即可启动 ,优麒麟重启数据库: service postgresql restart

C:\ParkServer\pgsql\bin>pg_controldata.exe –help pg_controldata

显示 PostgreSQL 数据库簇控制信息.

使用方法:

选项: [-D] DATADIR 数据目录 -V, –version 输出版本信息,然后退出

?, –help 显示帮助信息,然后退出

如果没有指定数据目录(DATADIR), 将使用 环境变量PGDATA.

报告错误至 pgsql-bugs@postgresql.org.

C:\ParkServer\pgsql\bin>pg_controldata.exe -D c:\ParkServer\pgsql\data

备注:

cd /usr/lib/postgresql/9.5/bin 下有pg_controldata pg_resetxlog

locate pg_controldata 可以全系统搜索

sudo su postgres 才能访问 /var/lib/postgresql/9.5/main

/etc/postgresql/9.5/main 下查看postgresql.conf 文件data目录

cd /var/log/postgresql 可以查看数据库的日志

tail -f /var/log/syslog
 Insecure directory in $ENV{PATH} while running with -T switch at /usr/bin/pg_ctlcluster line 463.
 
echo $PATH

查看所有路径的权限,权限太大的,都要改小

chmod 755 /usr
chmod 755 /bin
chmod 755 /sbin
chmod 755 /snap
sudo service postgresql start

关于如何正确的启动与停止postgresql就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI