PostgreSQL-10.22编译安装

所有的源码包地址:
https://ftp.postgresql.org/pub/source/

安装源码包之前,需要先准备好编译环境和安装必要的包:
yum groupinstall "Development tools"
yum install -y bison flex readline-devel zlib-devel make gmake epel-release lsof screen lrzsz nmap 

下载完后,上传到服务器上
一、添加用户
groupadd postgres
useradd -g postgres postgres
passwd 123456


二、解压
下载包:
wget https://ftp.postgresql.org/pub/source/v10.22/postgresql-10.22.tar.bz2 -C /usr/local/src
cd /usr/local/src/
bzip2 postgresql-10.22.tar.bz2
tar xf postgresql-10.22.tar


编译安装:
mkdir -p /usr/local/pg1022
cd /usr/local/src/pg-10.22-source/postgresql-10.22
#./configure --prefix=/usr/local/pg1022
#gmake install-world

这个步骤需要编译安装大约10-20分钟,具体看机器配置

三、创键数据文件夹
mkdir -p/usr/local/pg1022/data

四、把文件赋给postgres用户
chown -R postgres:postgres /usr/local/pg1022


五、数据库安装初始化
1、切换用户,添加环境变量并初始化数据库
su - postgres

2、添加环境变量
su - postgres
vim .bash_profile
export PGHOME=/usr/local/pg1022
export PGDATA=/usr/local/pg1022/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
3、使配置的环境变量生效
source .bash_profile

4、初始化数据库
initdb [命令选项] [--pgdata | -D] 目录名
常用命令选项有:
-A  method:设置认证方式,比如method的值可以是peer、ident、md5、trust等值
--auth-host=method:这个选项用来设置远程主机连接的认证方法
--auth-local=method:这个选项用来设置本地主机连接的认证方法
-E encoding:设置服务器端的编码方式
-U user   :设置服务器的超级用户
--pwfile=filename:设置超级用户的密码文件,从filename文件中的第一行读取,一般用于设置比较复杂的密码,或者用于自动化处理。
-W     :后面不带任何数值,表示在初始化时手动输入密码。
-D/--pgdata:这个用来设置存放PostgreSQL数据库文件和配置文件所在目录。
执行该命令:
initdb -A md5 -U postgres -W -D /usr/local/pg1022/data -E UTF-8  --locale=zh_CN.UTF-8


然后设置初始化密码
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
Enter new superuser password:
Enter it again:
fixing permissions on existing directory /usr/local/pg1022/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... PRC
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
    pg_ctl -D /usr/local/pg1022/data/ -l logfile start


六、修改配置文件并启动数据库
修改PostgresSQL 数据库配置
vim /usr/local/pg1022/data/postgresql.conf
修改为如下:
listen_addresses = '*'


修改客户端认证配置文件pg_hba.conf,将需要远程访问数据库的IP地址或地址段加入该文件
vim /var/postgresql/data/pg_hba.conf
在文件的最下方加上下面的这句话
host         all         all         0.0.0.0/0         md5


启动数据库
pg_ctl -D /usr/local/pg1022/data -l logfile start


七、测试数据库
输入命令 psql,
输入密码:123456


进行命令行:


查看数据库
\l


创建测试数据库
create database test;


切换到test 数据库
\c test


退出
\q


停止服务
pg_ctl stop -m fast
 

以上就是postgresql通过编译安装的全过程,整体安装比较简单。

分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS