在linux下安装postgresql有几种安装方法,一种可以通过yum进行安装。yum install postgresql
还有就是自定义安装,接下来我们就讲讲如何自定义安装。以及遇到的问题。
准备工作
创建用户
创建组和用户
groupadd postgres
useradd -g postgres postgres
准备安装目录
进入安装目录
cd /usr/local/
删除原有的安装(如果有的话)
rm -rf postgres*
下载源码
获取压缩包
wget https://ftp.postgresql.org/pub/source/v10.4/postgresql-10.4.tar.gz
解压
tar zxvf postgresql-10.4.tar.gz
编译启动
安装
cd postgresql-10.4
./configure --prefix=/usr/local/postgresql --without-readline
这一步是配置安装的路径,如果不配置,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/ect,其他的资源文件放在/usr/local/share,比较分散。 在这里可能会遇到两个问题,一个是 error:no acceptable C compiler found in $PATH 这是因为缺少 gcc编译器 yum install make cmake gcc gcc-c++ 或者 yum install gcc 即可解决。 如果遇到 error:zlib library not found这个问题 只需要 yum install zlib-devel即可解决
编译安装
make && make install
安装contrib目录下的一些工具,是第三方组织的一些工具代码,建议安装
cd contrib
make && make install
创建数据目录
建postgres数据库目录
mkdir -p /var/postgresql/data
chown postgres:postgres /var/postgresql -R
chown postgres:postgres /usr/local/postgresql -R (递归传递,将制定文件或文件下的子文件一并处理)
添加环境变量
切换用户
su – postgres
进入文本编辑器,添加如下内容
vi .bash_profile
export PGHOME=/usr/local/postgresql
export PGDATA=/var/postgresql/data
export PATH=$PGHOME/bin:$PATH
export MANPATH=$PGHOME/share/man:$MANPATH
export LANG=en_US.utf8
export DATE=`date +"%Y-%m-%d %H:%M:%S"`
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
alias rm='rm -i'
alias ll='ls -lh'
#alias pg_start='pg_ctl start -D $PGDATA'
#alias pg_stop='pg_ctl stop -D $PGDATA -m fast'
初始化数据库
initdb -D /var/psotgresql/data
启动服务
pg_ctl -D /var/postgresql/data -l /var/postgresql/logfile start
登陆客户端使用psql 数据库名 登陆数据库
缺省数据库名时,链接到默认的数据库postgresql
本地不用指定数据库
psql
创建测试数据库
Create database test;
切换到test数据库
\c test
创建测试表
Create table test (in integer, name test);
插入数据库
Insert into test (1,’aaa’);
选择数据
Select * from test;
使用 /p 或者 ctrl +z 可以切换到 终端