debian源码安装postgresql

debian源码安装postgresql-12

1.配置数据源

vim /etc/apt/sources.list
#阿里云数据源
deb http://mirrors.aliyun.com/debian/ buster main non-free contrib
deb-src http://mirrors.aliyun.com/debian/ buster main non-free contrib

2.更新数据源

apt-get update

3.下载源码安装包

#下载源码包(在任意位置下载,安装完成后可以删除安装包)

https://www.postgresql.org/ftp/source/v12.6/

4.解压


cd /usr/local

tar zxvf postgresql-12.6.tar.gz

5.设置安装目录

#进入解压后的目录下
cd /usr/local/postgresql-12.6
#configure编译 --prefix:指定安装的路径,一般都是/usr/local/pgsql
#如果没有pgsql
mkdir /usr/local/pgsql
#指定安装路径
./configure --prefix=/usr/local/pgsql/ 

6.根据情况下载缺少依赖

#安装C编译器 
apt-get install build-essential
#查看是否安装成功
gcc --version
#下载readline
apt-get install libreadline-dev
#下载zlib
apt-get install zlib1g-dev
#下载完成后重新安装

7.编译和安装(需要一些时间)

make 
make install

8.创建用户(已存在则不需要)

adduser postgres

9.创建库目录并修改权限

mkdir -p /home/data/postgres && chown -R postgres:postgres /home/data/postgres

10.初始化数据库目录

su postgres -c "/usr/local/pgsql/bin/initdb -D /home/data/postgres"
#如果报错:initdb: error: invalid locale settings; check LANG and LC_* environment variables
#安装locale-gen工具 
apt-get install locales
#生成所需要的语言环境
locale-gen en_US.UTF-8
#查看是否有 en_US.UTF-8 内容
cat /etc/locale.gen | grep en_US.UTF-8 
#去掉 en_US.UTF-8 前面的#号注释
vim /etc/locale.gen 
#重新生成本地化文件
locale-gen 
#查看是否有 en_US.utf8 该项内容
locale -a 
localedef --list-archive
#设置编码格式,选择en_US.utf8 utf8
dpkg-reconfigure locales

11.启动数据库

 su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -D /home/data/postgres"

12.验证版本

su - postgres -c "/usr/local/pgsql/bin/psql -c 'SELECT version();'"

13.远程连接(默认情况下只允许本地访问)

13.1.开放访问权限

vim /home/data/postgres/pg_hba.conf
#追加一行(通过MD5进行登陆密码校验):
host all all 0.0.0.0/0 md5

13.2.开放全地址监听(还可通过此文件配置端口、连接数,数据库时区等)

vim /home/data/postgres/postgresql.conf
#找到下方命令将注释释放
listen_addresses = '*'
#修改时区
log_timezone = 'PRC'
timezone = 'PRC'
#修改最大连接数
max_connections = 500

13.3.为用户设置密码

su - postgres -c "/usr/local/pgsql/bin/psql -c \"alter user postgres with password 'ZDKN2023';\""

13.4.重启服务

 su - postgres -c "/usr/local/pgsql/bin/pg_ctl restart -D /home/data/postgres"

14设置开机自启动

14.1.进入postgresql数据库开机自启动脚本位置

cd /usr/local/postgresql-12.6/contrib/start-scripts

14.2.将linux文件复制到 /etc/init.d 目录下,并且将其重名为postgresql

cp linux /etc/init.d/postgresql

14.3.进入 /etc/init.d 目录下,修改postgresql文件

cd /etc/init.d/
#将prefix设置为postgresql的安装路径:/usr/local/pgsql
#将PGDATA设置为postgresql的数据目录路径:/home/data/postgres
vim postgresql

14.4.添加开机权限

chmod +x postgresql

14.5.安装sysv-rc-conf管理服务启动项

apt-get install sysv-rc-conf
#运行sysv-rc-conf,查看在各个系统运行级别的服务启动项是否开启
#1,2(系统默认运行级别),3,4,5(当前系统运行级别)均为开机启动,空格选择,Q退出
sysv-rc-conf

14.6.设置完成重启测试

reboot
#查看服务状态
systemctl status postgresql
  • 12
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值