標籤:under 服務 strong 環境 log mis 記錄 建立和刪除使用者 使用者名稱
2.選擇語言後提示:
Error: There has been an error.
Please put SELinux in permissive mode and then run installer again. SELinux can
be put in enforcing mode again after installation.
Press [Enter] to continue :
解決方案:
需要臨時關閉SELinux
setenforce 0 ##設定SELinux 成為permissive模式
##setenforce 1 設定SELinux 成為enforcing模式
3.所有的指令,比如pg_ctrl提示:
-bash:pg_ctrl: command not found
解決方案:
這樣的指令必須加上路徑,即使是在目前的目錄下,也要用./pg_ctl
可以設定環境變數解決:
export PATH=/opt/PostgresPlus/9.2AS/bin:$PATH
4.pg_ctl等指令提示:
pg_ctl: no database directory specified and environment variable PGDATA unset
解決方案:
需要設定環境變數:
export PGDATA=/opt/PostgresPlus/9.2AS/data
5.完成安裝後,遠端連線資料庫出現問題:執行請求的操作時遇到錯誤:IO 錯誤: Got minus one from a read call
網上查的,打算修改一下opt/PostgresPlus/9.2AS/data|pg_hba.conf設定檔,可是目前使用者沒有許可權
打算切換到postgresql使用者,發現忘了密碼了
用passwd指令修改密碼,登陸成功
pg_hba.conf檔案增加行:host all all 0.0.0.0/0 trust
用pg_ctl restart重啟資料庫
修改服務端data/postgresql.conf檔案,將
#listen_address=‘localhost‘ 改成 listen_addresses = ‘*‘
6.restart失敗,無法關閉資料庫
按提示,增加參數:pg_ctl restart -m fast
7.重啟失敗,start也失敗,提示
2014-10-12 00:06:56 CST 致命錯誤: 組或其他使用者都可以訪問資料目錄 "/opt/PostgresPlus/9.2AS/data"
2014-10-12 00:06:56 CST 詳細資料: 許可權應該為 u=rwx (0700).
解決方案:
修改許可權:chmod 0700 data
切換到 具有root許可權的使用者,
1.先把檔案夾 “/var/lib/pgsql/9.3/data” 的使用者所屬組,給postgres 使用者:
進入/var/lib/pgsql/9.3目錄
cd /var/lib/pgsql/9.3
chown -R postgres:postgres data
2.把data目前的所有檔案及子目錄檔案許可權改成: rwx (0700)
chmod -R 0700 data
重啟PostgreSQL 資料庫,問題解決。
1.postgresql 啟動報錯 pg_ctl:PID file "/database/data/postmaster.pid" does not exist
解決方案:
原因: /pgdata目錄許可權問題,chown -R postgres:root /pgdata ,成功解決
8.啟動報錯:
2014-10-12 00:22:33 CST 日誌: 已載入的庫 "$libdir/dbms_pipe"
2014-10-12 00:22:33 CST 日誌: 已載入的庫 "$libdir/edb_gen"
2014-10-12 00:22:33 CST 日誌: 無法建立 IPv6 通訊端: 協議不支援的地址族
開始以為是IPv6的問題,後來根據後面的提示,查看日誌:
2014-10-12 01:39:15 CST 日誌: 無效認證方法"127.0.0.1/32"
2014-10-12 01:39:15 CST 上下文: 設定檔"/opt/PostgresPlus/9.2AS/data/pg_hba.conf"的第82行
2014-10-12 01:39:15 CST 致命錯誤: 無法載入pg_hba.conf
解決方案:
是pg_hba.conf的問題,經檢查是5中配置錯誤,將配置改為:
host all all 0.0.0.0/0 md5
啟動成功
9.登陸報錯:
-bash-4.1$ psql
Password:
psql: 致命錯誤: 使用者 "enterprisedb" Password 認證失敗
解決方案:
將host all all 0.0.0.0/0 md5
改為host all all 0.0.0.0/0 trust
允許使用者名稱密碼認證
10.接上回,輸入psql提示enterprisedb不存在
直接輸入psql的話,會預設尋找和目前使用者名一致的資料庫名,但是沒有這個資料庫
應該輸入:psql template1
成功:
template1=#
進入後:create database enterprisedb
或者不進入資料庫,用createdb指令
然後再次psql就能直接進入enterprisedb了
查看現有資料庫:
enterprisedb=# select oid,datname from pg_database;
oid | datname
-------+--------------
1 | template1
14077 | template0
14082 | postgres
14083 | edb
16384 | enterprisedb
(5 rows)
11.刪除data目錄,重新initdb資料庫
解決方案:
在data目錄下:rm -rf *
然後 initdb建立新的資料庫
12.修改用於enterprisedb密碼
這裡需要注意,enterprisedb可能是linux的密碼,也可能是資料庫的密碼,這裡修改的是資料庫的密碼
postgres=# ALTER USER enterprisedb with password ‘admin‘;
13.進入資料庫後如何退出:
template1=# quit
14.建立和刪除使用者:
createuser 是 SQL 命令 CREATE USER的封裝。
dropuser刪除使用者
Postgresql DB安裝和使用問題記錄