您的位置 首页 postgres

postgreSql 12.6 安装

postgreSql

启动:

pg_ctl -D /pgdata/12/data/ -l logfile start

进入:

su - postgres

psql

 

远程连接

psql -d postgres -h 10.0.0.215 -p 1921 -U postgres

 

国产类数据库 带动了 postgreSql 的发展,

还有 GUSS高斯(华为的) :计算机二级加入了。 底层内核是 postgresql

grenplum (PG)  专门做大数据的 (原生分布式的 AP 解决方案)

存储过程 可以用PG ,

TP

AP

postgreSQL(PG)
	三大底座
		mysql
		oracle
		postgreSQL
		国产数据库都是在这3个底座基础上开发的,  比如 高斯 基于PG

 

1 下载PG

https://www.postgresql.org/download/

建议 二进制 安装

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

tar.bz2 和 tar.gz 都可以,就是压缩比不一样而已

2. 安装

useradd postgres
passwd postgres

2.3 安装依赖包

yum groupinstall -y "Development Tools" "Legacy UNIX Compatibility" -y
yum install -y bison flex readline* zlib-devel gcc* gmake -y

2.4 创建目录并授权

mkdir -p /usr/local/pg12  #安装目录
mkdir -p /pgdata/12/data  #数据路径  sdb
mkdir -p /archive   # 归档 sdc 
chown -R postgres. /pgdata  
chown -R postgres. /archive
chown -R postgres. /usr/local/pg12
chmod 700 /pgdata/12/data -R

 

 

2.5 系统参数优化

# vi /etc/sysctl.conf
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmni = 4096
kernel.sem = 50100 64128000 50100 1280
fs.file-max = 7672460
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
# sysctl -p
# vi /etc/security/limits.conf
* soft nofile 131072
* hard nofile 131072
* soft nproc 131072
* hard nproc 131072
* soft core unlimited
* hard core unlimited
* soft memlock 50000000
* hard memlock 50000000
建议关闭numa
设置IO策略为deadline(机械)或者noop(SSD)

 

2.6 源码安装pg

2.6.1 上传软件至/opt,并解压

 

# tar xf postgresql-12.6.tar.gz
# cd postgresql-12.6
# ./configure --prefix=/usr/local/pg12 --with-pgport=1921  # 
# gmake world  # 所有功能都编译上,
# gmake install-world

 

如果编译数据库时使用了gmake world和gmake install-world, 所有的插件都会被安装

 

2.7 设置环境变量

 su - postgres

 
vim .bash_profile
export PGDATA=/pgdata/12/data
export LANG=en_US.utf8
export PGHOME=/usr/local/pg12
export
LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/us
r/local/lib:$LD_LIBRARY_PATH
export DATE=`date +"%Y%m%d%H%M"`
export PATH=$PGHOME/bin:$PATH:.
export MANPATH=$PGHOME/share/man:$MANPATH
export PGUSER=postgres
$ source .bash_profile

 

[postgres@pg1 ~]$ psql --version

 psql (PostgreSQL) 12.6

 

显示这样,说明 安装没问题了。

 

2.8 初始化数据

su - postgres
# 简易初始化
initdb -D /pgdata/12/data -W  #(我选的生产建议)
# 生产建议
initdb -A md5 -D $PGDATA -E utf8 --locale=C -W
# 启动
[postgres@pg1 ~]$ pg_ctl -D /pgdata/12/data/ start -l logfile

 

输入密码: 123456

pg_ctl   start  # 这种启动也可以

pg_ctl stop # 关闭 

验证 sql 能否正常使用

# 操作体验
[postgres@pg1 ~]$ psql
Password for user postgres:
postgres=# create database baimei ;

相对mysql 有点区别, 比如 show databases; ,  在 pg 里用

 \l   # show databases;

 

 

\c baimei;  # use  baimei

 

create table t1 (id int);

insert into t1 values(1);
\d ;  # show tables;
\d t1   # 表结构, desc  t1

3、启动关闭

pg_ctl -D /pgdata/12/data/ -l logfile start
pg_ctl -D /pgdata/12/data/ stop -ms
pg_ctl -D /pgdata/12/data/ stop -mf   # 默认的方式 
pg_ctl -D /pgdata/12/data/ stop -mi
pg_ctl restart -mf

 

关数据库有3中方式, smart , fast,  immediate

Shutdown modes are:
  smart       quit after all clients have disconnected   # 等待所有 客户端断开 比较慢
  fast        quit directly, with proper shutdown (default)  # kill , 事务就回滚 
  immediate   quit without complete shutdown; will lead to recovery on restart  #  电源给拔掉 

 

3.2 脚本方式

/opt/postgresql-12.6/contrib/start-scripts/linux

 

修改这个文件就可以。

 

pg_rman-- 备份

pg_pool--读写分离

repmgr

 

常用命令

\?
\l
\d
\d t1
\c oldguo
\help   # 查相关的SQL 支持
\help create user
\du
\x
\dn

 

远程访问:

 psql -d postgres -h 127.0.0.1 -p 1921  -U postgres

 

外网访问

Linux(CentOS)安装PostgreSQL数据库(外网访问)_centos 连接 postgresql-CSDN博客

要让CentOS上安装的PostgreSQL数据库可以从外部网络访问,您需要进行以下步骤:

sudo vi /var/lib/pgsql/data/postgresql.conf

/pgdata/12/data/postgresql.conf

 

找到以下行并进行修改:

#listen_addresses = 'localhost'

将其修改为:

listen_addresses = '*'

保存并关闭文件。

编辑PostgreSQL的pg_hba.conf文件以配置允许访问的主机。运行以下命令打开文件:

sudo vi /var/lib/pgsql/data/pg_hba.conf

vi /pgdata/12/data/pg_hba.conf

添加以下行到文件的末尾,以允许所有主机访问数据库:

host    all    all    0.0.0.0/0    md5

 

保存并关闭文件。

重新启动PostgreSQL服务以应用更改:

pg_ctl restart -mf

需要切换到 postgres 用户

测试连接

psql -d postgres -h 10.0.0.215 -p 1921 -U postgres

打开 Navicat 软件,点击 连接 -> PostgreSQL,主机输入服务器 IP 地址,端口、初始数据库、用户名都保持默认,密码输入刚才设置的。

我的navicat是 10.0.11 不支持

我用的datagrip

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章