postgreSQL初步應用
1.初始化資料庫:initdb –D /usr/local/pgsql/data
2.啟動posgreSQL資料庫:postmaster -i –D /usr/local/pgsql/data
3.建立一個空間資料庫:createdb gisdb
4.開啟gis資料庫:psql gisdb,之後即可在命令列下進行sql語句操作了
5.如果需要推出命令列,輸入“;/q”即可
6.停止資料庫:pg_ctl stop –D /usr/local/pgsql/data
7.匯入一個SQL檔案:psql –d gisdb –f test.sql
8.建立一個超級使用者:create ROLE test1 with SUPERUSER PASSWORD '123456'
9.注消一個使用者或角色:drop ROLE test1
10.在命令列下可以輸入/du來查看所有使用者,也可以查詢角色表查看:select * from pg_roles
11.如果想要遠程登入,需要授權LOGIN許可權:alter ROLE test2 with LOGIN
備忘:因為PostgreSQL預設的資料庫編碼是UTF-8編碼,因此如果為了能在Telnet上正常顯示漢字,需要在.bash_profile中設定LANG=zh_CN.GBK編碼,這樣就導致編碼不一致,因此需要做用戶端到伺服器的編碼轉換,可以在$PGSQL_HOME/data/postgresql.conf中,把client_encoding=GBK即可(需要重新啟動資料庫)
pgAdmin的安裝配置
1.下載安裝Windows版本的pgAdmin3
2.設定遠端連線的帳號,“檔案”-》“添加伺服器帳號”
3.在對話方塊中輸入資料庫名稱、主機地址、連接埠號碼、使用者名稱
4.點擊“確定”即可
5.串連之前需要先在伺服器上開放遠程偵聽連接埠,Linux下是在/etc/sysconfig/iptables中添加訪問規則
6.修改pg_hba.conf設定檔中的屬性,開放用戶端的存取權限,如下形式[host 資料庫名 使用者名稱 IP地址 子網路遮罩 許可權]:host all all 192.168.10.8 255.255.255.0 trust
7.添加一個使用者角色test1並把它賦於超級使用者權限:create user test1 SUPERUSER;
8.如果是賦於預設許可權,在pgAdmin中將無法瀏覽資料內容,出現:permission denied for relation test1
PostGis的配置
1.匯入Sql檔案到gisdb資料庫
#cd $POSTGIS_HOME/share
#psql –d gisdb –f lwpostgis.sql
#psql –d gisdb –f lwpostgis_update.sql
#psql –d gisdb –f spatial_res_sys.sql
2.其中spatial_res_sys.sql中放置的世界各地的投影座標參數