啟動和停止數(shù)據(jù)庫服務器
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
模式:會等待活動的事務提交結束,并等待客戶端主動斷開連接之后關閉數(shù)據(jù)庫服務
fast
模式:會回滾所有的活動的事務,并強制斷開客戶端的連接然后關閉數(shù)據(jù)庫(默認就是使用fast 相當于Oracle 中的 immediate模式關閉)
immediate
模式: 會立即終止所有服務器進程,當下一次數(shù)據(jù)庫啟動的時候會首先進入恢復狀態(tài)( 相當于使用 kill 工具殺死進程[此方式不會干凈的關閉數(shù)據(jù)庫且會造成數(shù)據(jù)丟失] )
pg_ctl status -D [ data 所在路徑 ]
使用 postmaster postgres 程序啟動數(shù)據(jù)庫
/usr/pgpsql-10/bin/postgres -D [ data 所在路徑 ]
kill -sigterm `head -1 /usr/pgpsql-10/data/postmaster.pid`
如果要在操作系統(tǒng)啟動時就啟動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 的描述。本地計算機上未安裝引發(fā)此事件的組件,或者安裝已損壞??梢园惭b或修復本地計算機上的組件。
1、使用pg_controldata 查找 nextoID 和 nextXID
2、重置事物日志
pg_resetxlog -o nextOID -x NextXID -f pgdata的目錄
重啟數(shù)據(jù)庫即可啟動 ,優(yōu)麒麟重啟數(shù)據(jù)庫: service postgresql restart
C:\ParkServer\pgsql\bin>pg_controldata.exe –help pg_controldata
顯示 PostgreSQL 數(shù)據(jù)庫簇控制信息.
使用方法:
選項: [-D] DATADIR 數(shù)據(jù)目錄 -V, –version 輸出版本信息,然后退出
?, –help 顯示幫助信息,然后退出
如果沒有指定數(shù)據(jù)目錄(DATADIR), 將使用 環(huán)境變量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
可以全系統(tǒng)搜索
sudo su postgres
才能訪問 /var/lib/postgresql/9.5/main
/etc/postgresql/9.5/main
下查看postgresql.conf
文件data
目錄
cd /var/log/postgresql
可以查看數(shù)據(jù)庫的日志
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
即可。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- postgresql 實現(xiàn)啟動、狀態(tài)查看、關閉
- 啟動PostgreSQL服務器 并用pgAdmin連接操作
- 本地計算機上的 postgresql 服務啟動后停止的問題解決
- PostgreSQL pg_ctl start啟動超時實例分析
- Ubuntu 16.04設置PostgreSQL開機啟動的方法
- PostgreSQL實戰(zhàn)之啟動恢復讀取checkpoint記錄失敗的條件詳解
- 解決PostgreSQL服務啟動后占用100% CPU卡死的問題
- PostgreSQL 啟動失敗的解決方案