0.编译环境
-
Linux: CentOS 5.5
-
gcc: 4.1.2
-
安装PostgreSQL
1) 解压postgresql-9.1.7.tar.bz2
#tar jxvf postgresql-9.1.7.tar.bz2
2) 进入解压后的postgresql-9.1.7目录
#cd postgresql-9.1.7
3) 编译postgresql源码
#./configure --prefix=/opt/pgsql-9.1.7
#make
#make install
至此,完成postgresql的安装。进入/opt/pgsql-9.1.7目录可以看到安装后的postgresql的文件。
#ls /opt/pgsql-9.1.7
2.创建postgresql数据库
1) 创建postgres用户
#useradd postgres
修改postgres密码
#passwd postgres
2) 设置postgres用户的环境变量
切换到postgres用户
#su - postgres
进入postgres的主目录
#cd ~
编辑~/.bash_profile文件
#vi ~/.bash_profile
设置以下的环境变量
export PGHOME=/opt/pgsql-9.1.7
export PGDATA=~/data
保存,退出vi。执行以下命令,使环境变量生效
#source ~/.bash_profile
3) 初始化postgres数据库
#initdb
至此,完成postgres数据库的初始化。
4) 启动postgres数据库实例
#pg_ctl start
可以看到postgresql数据库实例已经启动,通过下面的命令可以查看系统中运行的postgres进程
#ps -ef | grep postgres
5) 连接postgresql数据库
#psql -h 127.0.0.1 -d postgres -U postgres
6) 停止postgresql数据库实例
#pg_ctl stop
#ps -ef | grep postgres
可以看到已经没有postgres进程
\3. 设置PostgreSQL开机自启动
PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下
linux文件即为linux系统上的启动脚本
1)修改linux文件属性,添加X属性
#chmod a+x linux
2) 复制linux文件到/etc/init.d目录下,更名为postgresql
#cp linux /etc/init.d/postgresql
3)修改/etc/init.d/postgresql文件的两个变量
prefix设置为postgresql的安装路径:/opt/pgsql-9.1.2
PGDATA设置为postgresql的数据目录路径:
4) 执行service postgresql start,就可以启动PostgreSQL服务
#service postgresql start
5)设置postgresql服务开机自启动
#chkconfig --add postgresql
执行上面的命令,就可以实现postgresql服务的开机自启动。
一、安装
可以参考postgresql官网安装教程:https://www.postgresql.org/download/linux/redhat/
Centos 6 安装postgresql 10
添加RPM:
-- centos 6 安装 postgresql 10
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-6-x86_64/pgdg-centos10-10-2.noarch.rpm
-- centos 7 安装 postgresql 10
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
安装客户端:
yum install postgresql10
安装服务端:
yum install postgresql10-server
启动数据并初始化:
service postgresql-10 initdb
chkconfig postgresql-10 on
service postgresql-10 start
二、创建用户和数据库
# su - postgres -- 首先切换到postgres
-bash-4.1$ psql -- 输入psql
psql (10.5)
Type "help" for help.
postgres=#
创建用户
postgres=# create user username with password '****';
CREATE ROLE
postgres=#
需要注意:
-
要以英文分号结尾
2.密码需要引号包裹
创建数据库
postgres=# create database dbtest owner username; -- 创建数据库指定所属者
CREATE DATABASE
postgres=#
将数据库得权限,全部赋给某个用户
postgres=# grant all on database dbtest to username; -- 将dbtest所有权限赋值给username
GRANT
postgres=#
三、数据库的导入导出
导入整个数据库
psql -U username databasename < /data/dum.sql -- 用户名和数据库名