在要安装postgresql数据库的Linux服务器上执行以下命令安装所需要的依赖包:
yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake
创建群组 postgres
- groupadd postgres
创建用户postgres,并指定群组为postgres
- useradd -g postgres postgres
上传.tar.gz到指定目录 我的在/data/pgsql下
- tar zxvf *
解压后形成新的postgresql-9.1.3文件夹
在这个下编译安装
正常执行下面的命令
- ./configure --without-readline
我的gcc版本过高 正常执行不可以,
./configure --without-readline CFLAGS="-Wno-aggressive-loop-optimizations"
执行这个可以成功
然后再执行
- make
- make install
pg_ctl -V 显示版本编译成功
这样安装会默认安装到/usr/local/pgsql/下 在这个下 新建
mkdir data
chown postgres:postgres data
进入home/postgres目录可以看到.bash_profile文件。
vi .bash_profile
添加下面的
export PGHOME=/usr/local/pgsql
export PGDATA=/usr/local/pgsql/data
PATH=$PATH:$HOME/bin:$PGHOME/bin
保存,退出vi。执行以下命令,使环境变量生效
source .bash_profile
切换用户到postgres并使用initdb初使用化数据库
su - postgres
执行 initdb
成功可以看到 /usr/local/pgsql/data已经有文件了。
修改/usr/local/pgsql/data目录下的两个文件。
postgresql.conf 配置PostgreSQL数据库服务器的相应的参数。
pg_hba.conf 配置对数据库的访问权限。
vi postgresql.conf
listen_addresses = '*'
将行开头的#去掉,把这个地址改为*,表示在本地的所有地址上监听。
vi pg_hba.conf
找到最下面这一行 ,这样局域网的人才能访问。红色为新添加内容。
# IPv4 local connections:
host all all 0.0.0.0/0 trust
host all all 127.0.0.1/32 trust
默认端口5432
PostgreSQL数据库创建一个postgres用户作为数据库的管理员,密码随机,所以需要修改密码,
步骤一:登录PostgreSQL
sudo
-u postgres psql
或者在postgres
用户下直接执行psql
步骤二:修改登录PostgreSQL密码
ALTER USER postgres WITH PASSWORD
'postgres'
;