使用RedHat 7映像文件中自带的Postgresql安装包安装。
1.rpm安装
[root@localhost ~]# mount /dev/cdrom /mnt
[root@localhost ~]# cd /mnt/Packages
[root@localhost Packages]# rpm -ihv postgresql-libs-9.2.7-1.el7.x86_64.rpm
[root@localhost Packages]# rpm -ihv postgresql-9.2.7-1.el7.x86_64.rpm
[root@localhost Packages]# rpm -ihv postgresql-server-9.2.7-1.el7.x86_64.rpm
2、初始化数据库并建立数据库和用户
[root@localhost ~]# su - postgres (切换用户)
[postgres@localhost ~]$ initdb -D /var/lib/pgsql/data/ (初始化数据库)
(在这一步时,对于中文环境,系统的字符集不能为zh_CN.GB18030,可以选择zh_CN.GB2312)
属于此数据库系统的文件宿主为用户 "postgres".此用户也必须为服务器进程的宿主.数据库簇将使用本地化语言 "zh_CN.UTF-8"进行初始化. 默认的数据库编码已经相应的设置为 "UTF8". initdb: 无法为本地化语言环境"zh_CN.UTF-8"找到合适的文本搜索配置 缺省的文本搜索配置将会被设置到"simple" 修复已存在目录 /var/lib/pgsql/data 的权限 ... 成功 正在创建子目录 ... 成功 选择默认最大联接数 (max_connections) ... 100 选择默认共享缓冲区大小 (shared_buffers) ... 32MB 创建配置文件 ... 成功 在 /var/lib/pgsql/data/base/1 中创建 template1 数据库 ... 成功 初始化 pg_authid ... 成功 初始化dependencies ... 成功 创建系统视图 ... 成功 正在加载系统对象描述 ...成功 创建(字符集)校对规则 ... 成功 创建字符集转换 ... 成功 正在创建字典 ... 成功 对内建对象设置权限 ... 成功 创建信息模式 ... 成功 正在装载PL/pgSQL服务器端编程语言...成功 清理数据库 template1 ... 成功 拷贝 template1 到 template0 ... 成功 拷贝 template1 到 template0 ... 成功 警告:为本地连接启动了 "trust" 认证. 你可以通过编辑 pg_hba.conf 更改或你下次 行 initdb 时使用 -A或者--auth-local和--auth-host选项. 成功. 您现在可以用下面的命令运行数据库服务器: postmaster -D /var/lib/pgsql/data 或者 pg_ctl -D /var/lib/pgsql/data -l logfile start
现在就可以启动数据库了
[postgres@localhost ~]$ postgres -D /usr/local/pgsql/data >logfile 2>&1 &
提示:[1] 31659
(或者为:
pg_ctl -D /usr/local/pgsql/data start (启动)
pg_ctl -D /usr/local/pgsql/data stop(停止))
提示:server starting
然后我们执行进程察看命令查看服务是否已经启动:
[postgres@localhost ~]$ ps -A | grep postgres
31675 pts/0 00:00:00 postgres
31677 ? 00:00:00 postgres
31678 ? 00:00:00 postgres
31679 ? 00:00:00 postgres
31680 ? 00:00:00 postgres
说明数据库服务已经启动。
3.创建数据库(数据库名自己定义,示例中为“test”)
[postgres@localhost ~]$ createdb test
4.创建数据库用户
[postgres@localhost ~]$ createuser testuser
5.访问数据库
[postgres@localhost ~]$ psql -d test -U testuser (-d 数据库名称,-U 用户名)
psql (9.1.6)
Type "help" for help.
test=#
这样,就可以进行正常的psql下命令行的操作了。
使用"\q"命令进行退出。