首页 > 技术文章 > odoo 开发基础 -- postgresql重新启动、状态查看

hellojesson 原文

场景描述:

当遇到数据库不能正常访问的时候,我们首先想到的是,查看相关的告警日志,一般先查看系统的日志,然后查看数据库的日志,Linux平台下,postgresql的日志文件存放目录在如下路径:

test@odoo:/var/log/postgresql$ pwd
/var/log/postgresql
将日志的信息实时打印输出: test@odoo:
/var/log/postgresql$ tail -f postgresql-9.5-main.log

如果需要重启数据库

利用psql启动数据库

首先切换到postgres用户下,

[postgres@test~]$ pg_ctl start

查看系统中运行的postgres进程

#ps -ef | grep postgres

连接postgresql数据库

#psql -h 127.0.0.1 -d postgres -U postgres

停止postgresql数据库实例

#pg_ctl stop
#ps -ef | grep postgres
启动服务器最简单的方法是像下面这样:
$ postgres -D /usr/local/pgsql/data

最好在后台启动postgres,使用下面的 Unix shell 语法:


$ postgres -D /usr/local/pgsql/data >logfile 2>&1 &

要做一次快速关闭:

$ kill -INT `head -1 /usr/local/pgsql/data/postmaster.pid`

如果启动失败提示一下信息:

LOG:  could not bind IPv4 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
FATAL:  could not create TCP/IP listen socket

解决方法:

查看端口在用

netstat -lanp|grep 5432
ps -ef|grep postgres
498        673    1  0 10:50 ?        00:00:00/usr/bin/postgres -D /var/lib/cloudera-scm-server-db/data

kill进程
kill -9 673

重启启动服务

service  start
service  status

 其他参考:

http://blog.csdn.net/Dracotianlong/article/details/7828515

推荐阅读