龙芯3A3000编译安装Postgresql12.2

1.背景

   龙芯3A3000,中标麒麟,gcc等开发工具已经安装好了。

2.postgres 12源码下载

打开https://www.postgresql.org/ftp/source/v12.2/   ,选择源码压缩包postgresql-12.2.tar.gz下载到龙芯机器里面。

3.开始编译安装pg12源码

  创建工作目录

sudo mkdir /data/pg12
sudo mkdir /data/pgdata
useradd postgres
chown postgres:root /data/pgdata

将pg源码压缩包移动到/data/pg12里面并解压缩

mv postgresql-12.2.tar.gz /data/pg12
cd /data/pg12
tar -zxvf postgresql-12.2.tar.gz
cd postgresql-12.2
./configure --without-readline  --without-zlib 

 命令大概执行5分钟左右,最后执行完成后出现如下图所示的结果:

然后输入

make && make install

这个执行过程长,大概20分钟左右,最后成功执行后出现如下所示的结果:

到这里编译就完成了,下面是配置过程。

4.配置及初始化数据库等

4.1  将pg的可执行程序加入到PATH环境变量中去

vi /etc/profile

找到export PATH那一行,在最后追加/usr/local/pgsql/bin

然后source /etc/profile 让配置文件生效

4.2 初始化数据库

su  -  postgres  切换到postgres用户

执行

initdb -D /data/pgdata 

初始化数据库,结果如下:

4.3 将pg12安装为系统服务

切换回root用户,下面的命令都在root用户下执行。

vi /etc/systemd/system/pg12.service

输入以下内容:

[Unit]
Description=pg

[Service]
User=postgres

ExecStart=/usr/local/pgsql/bin/postmaster -D /data/pgdata
Restart=always

[Install]
WantedBy=multi-user.target

保存后执行:


systemctl enable pg12

systemctl restart pg12

systemctl  status pg12

正常情况应该如上图一样,显示绿色的running就对了。

4.4 修改数据库配置参数

4.4.1 修改服务监听IP及端口等

还是以root用户执行以下命令

vi /data/pgdata/postgresql.conf

找到以下三个参数并进行修改:
listen_addresses = '*'   
port = 5432  
max_connections = 2000 

4.4.2 修改连接及密码校验规则等

vi /data/pgdata/pg_hba.conf

找到IPV4那里,新增以下内容:

host    all             all             0.0.0.0/0              md5

4.4.3 修改数据库超级用户postgres的密码

su - postgres

执行psql

输入

alter role postgres with password 'MyPassword123@';

如果提示:ALTER ROLE则密码修改成功,如果没有提示就是密码不够复杂没有修改成功。

修改密码后ctrl+d退出psql,exit退出postgres用户,systemctl restart pg12重启服务,然后用开发工具进行连接测试就可以了。

 

5.跑个分吧,国产处理器3A3000,8G内存,SSD

su - postgres

psql

create database pgbench;

\q

pgbench -i  

pgbench -i --unlogged-tables -s 16 -U postgres -p 5432 -d pgbench

[postgres@localhost postgresql-12.2]$ pgbench  -i  --unlogged-tables -s 16 -U postgres -p 5432 -d pgbench
dropping old tables...
NOTICE:  table "pgbench_accounts" does not exist, skipping
NOTICE:  table "pgbench_branches" does not exist, skipping
NOTICE:  table "pgbench_history" does not exist, skipping
NOTICE:  table "pgbench_tellers" does not exist, skipping
creating tables...
generating data...
100000 of 1600000 tuples (6%) done (elapsed 0.27 s, remaining 4.09 s)
200000 of 1600000 tuples (12%) done (elapsed 0.56 s, remaining 3.91 s)
300000 of 1600000 tuples (18%) done (elapsed 0.85 s, remaining 3.68 s)
400000 of 1600000 tuples (25%) done (elapsed 1.15 s, remaining 3.46 s)
500000 of 1600000 tuples (31%) done (elapsed 1.44 s, remaining 3.18 s)
600000 of 1600000 tuples (37%) done (elapsed 1.75 s, remaining 2.91 s)
700000 of 1600000 tuples (43%) done (elapsed 2.04 s, remaining 2.62 s)
800000 of 1600000 tuples (50%) done (elapsed 2.33 s, remaining 2.33 s)
900000 of 1600000 tuples (56%) done (elapsed 2.62 s, remaining 2.04 s)
1000000 of 1600000 tuples (62%) done (elapsed 2.93 s, remaining 1.76 s)
1100000 of 1600000 tuples (68%) done (elapsed 3.23 s, remaining 1.47 s)
1200000 of 1600000 tuples (75%) done (elapsed 3.55 s, remaining 1.18 s)
1300000 of 1600000 tuples (81%) done (elapsed 3.86 s, remaining 0.89 s)
1400000 of 1600000 tuples (87%) done (elapsed 4.17 s, remaining 0.60 s)
1500000 of 1600000 tuples (93%) done (elapsed 4.48 s, remaining 0.30 s)
1600000 of 1600000 tuples (100%) done (elapsed 4.79 s, remaining 0.00 s)
vacuuming...
creating primary keys...
done.

插入16万条记录用了4.79s

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

peihexian

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值