關(guān)于HGDB安全版初始化失敗的常見(jiàn)原因列舉(權(quán)限、用戶(hù))
當(dāng)安裝完安全版數(shù)據(jù)庫(kù),手動(dòng)初始化數(shù)據(jù)庫(kù)時(shí)提示失敗。
權(quán)限、用戶(hù)、環(huán)境變量等因素都可能導(dǎo)致此問(wèn)題發(fā)生。
1、環(huán)境變量因素
(1)環(huán)境變量文件未配置
[root@mode2 ~]# initdb -D $PGDATA -e sm4 -c "echo 12345678" > /opt/HighGo4.5.5-see/bin/initdb.log bash: initdb: 未找到命令...解決方法
|
①將數(shù)據(jù)庫(kù)環(huán)境變量文件添加到.bashrc或.bash_profile中
[root@mode2 ~]# vi ~/.bash_profile 添加以下信息 source /opt/HighGo4.5.5-see/etc/highgodb.env [root@mode2 ~]# source ~/.bash_profile
|
②將具體的環(huán)境變量信息填寫(xiě)到.bashrc或.bash_profile中
[root@mode2 ~]# vi ~/.bash_profile 添加以下信息 export HG_BASE=/opt/HighGo4.5.5-see export HGDB_HOME=/opt/HighGo4.5.5-see export PGPORT=5866 export PGDATABASE=highgo export PGDATA=$HGDB_HOME/data export PATH=$HGDB_HOME/bin:$PATH [root@mode2 ~]# source ~/.bash_profile
|
2、用戶(hù)權(quán)限問(wèn)題
執(zhí)行初始化命令的用戶(hù)沒(méi)有創(chuàng)建data目錄的權(quán)限
[highgo@mode2 ~]$ initdb -D /opt/data1 屬于此數(shù)據(jù)庫(kù)系統(tǒng)的文件宿主為用戶(hù) "highgo". 此用戶(hù)也必須為服務(wù)器進(jìn)程的宿主. 數(shù)據(jù)庫(kù)簇將使用本地化語(yǔ)言 "zh_CN.UTF-8"進(jìn)行初始化. 默認(rèn)的數(shù)據(jù)庫(kù)編碼已經(jīng)相應(yīng)的設(shè)置為 "UTF8". initdb: 無(wú)法為本地化語(yǔ)言環(huán)境"zh_CN.UTF-8"找到合適的文本搜索配置 缺省的文本搜索配置將會(huì)被設(shè)置到"simple" 禁止為數(shù)據(jù)頁(yè)生成校驗(yàn)和. Data encryption is disabled. 創(chuàng)建目錄 /opt/data1 ... initdb: 無(wú)法創(chuàng)建目錄 "/opt/data1": 權(quán)限不夠
|
解決方法
使用root用戶(hù)將data目錄上級(jí)目錄權(quán)限賦予初始化用戶(hù),或者直接創(chuàng)建data空目錄,將data空目錄權(quán)限授予初始化用戶(hù)
[root@mode2 etc]# mkdir /opt/data1 [root@mode2 etc]# chown -R highgo:highgo /opt/data1 [root@mode2 etc]# su - highgo [highgo@mode2 ~]$ initdb -D /opt/data1 屬于此數(shù)據(jù)庫(kù)系統(tǒng)的文件宿主為用戶(hù) "highgo". 此用戶(hù)也必須為服務(wù)器進(jìn)程的宿主. 數(shù)據(jù)庫(kù)簇將使用本地化語(yǔ)言 "zh_CN.UTF-8"進(jìn)行初始化. 默認(rèn)的數(shù)據(jù)庫(kù)編碼已經(jīng)相應(yīng)的設(shè)置為 "UTF8". initdb: 無(wú)法為本地化語(yǔ)言環(huán)境"zh_CN.UTF-8"找到合適的文本搜索配置 缺省的文本搜索配置將會(huì)被設(shè)置到"simple" 禁止為數(shù)據(jù)頁(yè)生成校驗(yàn)和. Data encryption is disabled. 修復(fù)已存在目錄 /opt/data1 的權(quán)限 ... 成功 正在創(chuàng)建子目錄 ... 成功 選擇默認(rèn)最大聯(lián)接數(shù) (max_connections) ... 100 選擇默認(rèn)共享緩沖區(qū)大小 (shared_buffers) ... 128MB 選擇動(dòng)態(tài)共享內(nèi)存實(shí)現(xiàn) ......posix 創(chuàng)建配置文件 ... 成功 正在運(yùn)行自舉腳本 ...成功 正在執(zhí)行自舉后初始化 ...成功 同步數(shù)據(jù)到磁盤(pán)...成功 警告:為本地連接啟動(dòng)了 "trust" 認(rèn)證. 你可以通過(guò)編輯 pg_hba.conf 更改或你下次 行 initdb 時(shí)使用 -A或者--auth-local和--auth-host選項(xiàng). Success. You can now start the database server using: pg_ctl -D /opt/data1 -l logfile start
|