最近在使用linux操作系统下的postgresql数据库,版本是9.0,在这个过程中,学习了很多东西,将一些总结放到这里,供以后参考。
1、下载pg9.0后,先confiugre相关参数,然后make install进行安装,具体细节可见手册。需要说明的是,configure中有多个参数可以设置,包括指定编译器优化级别、安装目录、是否开启assert、debug等。
2、安装完后,初始化数据目录(initdb),完成后通过pg_ctl 和postgres启动数据库,具体参数看 --help。
3、通过psql连接数据库,需要指定host,port,database,username,password。为了方便,可以在个人运行环境中设置环境变量,PGHOST,PGPORT,PGDATABASE,PGUSER,PGPASSWORD。此外,还可设置数据目录环境变量PGDATA。
4、为了让网络用户和远程用户访问,需要在postgresql.conf 中激活 listen_addresses='*'。在pg_hba.conf配置文件中加入访问主机的地址。
5、postgresql中也有很多开源图形管理工具,但为了成为高手,建议还是使用psql去管理和监控数据库。
6、psql连接上数据库后,客户端与数据库建立一个session,用户可以对数据库发送sql命令了。当然,如果不想建立session,也可以通过 -c参数加sql语句来执行命令,或者-f参数加sql脚本来执行命令。具体细节psql --help。
7、psql环境下,可以输入两类命令,一类是psql客户端命令,一类是postgresql sql命令。可通过\?和\help方式查看具体命令。
8、当数据库服务器无法启动时,通常原因包括:端口号被占用,data目录不存在或指错位置等。可通过ps -ef| grep postgres查看有哪些postgresql服务器正在运行,使用不冲突的端口号进行启动。
9、当psql无法连接数据库服务器时,原因可能有多种:包括用户名、密码、数据库、端口错误等,连接数量过多,是否为远程用户或网络用户开启权限等,具体原因可根据返回的提示来具体分析。