CentOS 6.x環境下yum安裝PostgreSQL 9.3.x的過程
PostgreSQL 是一種非常複雜的對象-關係型資料庫管理系統(ORDBMS),也是目前功能最強大,特性最豐富和最複雜的自由軟體資料庫系統。有些特性甚至連商務資料庫都不具備。這個起源於伯克利(BSD)的資料庫研究計劃目前已經衍產生一項國際開發項目,並且有非常廣泛的使用者。
下面記錄CentOS 6.3環境下yum安裝Postgres 9.3的簡要過程。
1.查看已安裝的包
# rpm -qa|grep postgres
如果已經存在
//卸載
# rpm -e postgresql92-server-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-contrib-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-libs-9.2.4-1PGDG.rhel6.i686
2. yum 安裝
yum install http://yum.postgresql.org/9.3/RedHat/rhel-6-x86_64/pgdg-redhat93-9.3-1.noarch.rpm
yum install postgresql93-server postgresql93-contrib
//初始化
service postgresql-9.3 initdb
開啟
service postgresql-9.3 start或者
/etc/init.d/postgresql-9.3 start
查看安裝結果
rpm -aq| grep postgres
可以看到
[root@i-87-575-VM vmuser]# rpm -aq| grep postgres
postgresql93-libs-9.3.4-1PGDG.rhel6.x86_64
postgresql93-contrib-9.3.4-1PGDG.rhel6.x86_64
postgresql93-9.3.4-1PGDG.rhel6.x86_64
postgresql93-server-9.3.4-1PGDG.rhel6.x86_64
說明已經安裝好了。
3.測試
[root@i-87-575-VM vmuser]# su - postgres
-bash-4.1$ psql -l
預設密碼為空白,我們需要修改為指定的密碼,這裡設定為’postgres’。
-bash-4.1$ psql
PostgreSQL 資料庫預設會建立一個postgres的資料庫使用者作為資料庫的管理員,預設密碼為空白,我們需要修改為指定的密碼,這裡設定為’postgres’。
# ALTER USER postgres WITH PASSWORD 'postgres';
# select * from pg_shadow ;
CentOS 6.x安裝PostgreSQL 9.3.x報錯: jade: Command not found
1
[root@pghost1 postgresql-9.3.5]# ./configure --prefix=/opt/pgsql9.3.5 --with-pgport=1949 --with-perl --with-tcl --with-python --with-openssl --with-pam --without-ldap --with-libxml --with-libxslt --enable-thread-safety --with-wal-blocksize=8 --with-blocksize=8 && gmake world
...
gmake[3]: jade: Command not found
gmake[3]: *** [HTML.index] Error 127
gmake[3]: Leaving directory `/root/backup/postgresql-9.3.5/doc/src/sgml'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/root/backup/postgresql-9.3.5/doc/src'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/root/backup/postgresql-9.3.5/doc'
gmake: *** [world-doc-recurse] Error 2
[root@pghost1 postgresql-9.3.5]#
2
網上又說是copy安裝檔案時使用者切換引起的,主要是檔案歸屬和許可權問題
我的過程應該沒有問題,還是如下,繼續,還是同樣的錯
[root@pghost1 postgresql-9.3.5]# chown -R root:root postgresql-9.3.5/
3
顯然是配置pg相關文檔時出現的問題,分別加上--with-no-docs和--with-no-html-docs繼續,結果錯誤依舊
增加--with-no-docs
./configure --prefix=/opt/pgsql9.3.5 --with-pgport=1949 --with-perl --with-tcl --with-python --with-openssl --with-pam --without-ldap --with-libxml --with-libxslt --enable-thread-safety --with-wal-blocksize=8 --with-blocksize=8 --with-no-docs && gmake world
4
試了一把以前裝過的pg934,問題依舊,而這次的環境虛擬機器是新裝的,問題留待以後確認
5
尋找jade相關包並安裝
yum search jade
[root@pghost1 backup]# yum -y install openjade.x86_64
6
再次configure問題依舊
7
yum -y install jadetex.noarch
yum -y install docbook-dtds.noarch
8
繼續配置,報如下錯誤:
ERROR: `collateindex.pl' is missing on your system.
***
gmake[3]: *** [bookindex.sgml] Error 1
gmake[3]: Leaving directory `/root/backup/postgresql-9.3.5/doc/src/sgml'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/root/backup/postgresql-9.3.5/doc/src'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/root/backup/postgresql-9.3.5/doc'
gmake: *** [world-doc-recurse] Error 2
[root@pghost1 postgresql-9.3.5]#
9
yum -y install docbook*
10
繼續終於成功,看到了期望結果:
cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fpic -shared -o pgxml.so xpath.o xslt_proc.o -L../../src/port -L../../src/common -Wl,--as-needed -Wl,-rpath,'/opt/pgsql9.3.5/lib',--enable-new-dtags -lxslt -lxml2
gmake[2]: Leaving directory `/root/backup/postgresql-9.3.5/contrib/xml2'
gmake[1]: Leaving directory `/root/backup/postgresql-9.3.5/contrib'
PostgreSQL, contrib, and documentation successfully made. Ready to install.
[root@pghost1 postgresql-9.3.5]#
11
後續操作正常
總結一下就是如下就可以了。
yum -y install openjade.x86_64
yum -y install jadetex.noarch
yum -y install docbook*