最近迷上了pgsql,发现比mysql强大太多

二进制安装过程:

预先创建好postgres账户:

group add postgres

useradd postgres -g postgres

修改密码

1、下载:

wget https://get.enterprisedb.com/postgresql/postgresql-10.7-1-linux-x64-binaries.tar.gz

2、解压缩:

tar -zxf postgresql-10.7-1-linux-x64-binaries.tar.gz

mv pgsql /usr/local/pgsql

3、创建pgsql的数据目录:

mkdir -p /usr/local/pgsql/data

4、授权:

chown -R postgres:postgres /usr/local/pgsql

5、初始化pgsql的数据库:

cd /usr/local/pgsql/bin

./initdb -D /usr/local/pgsql/data       这里指定的是前面创建的pgsql的数据目录

6、启动:

./pg_ctl -D /usr/local/pgsql/data/ start

7、进入命令行:

./psql -Upostgres

 

配置:

pgsql用的配置文件在数据目录下,名字叫做:postgresql.conf

一般配置:

listen_addresses:监听地址

port:监听端口

max_connections:最大连接数

superuser_reserved_connections:超级用户的连接数

unix_socket_directories:在Unix机器上socket文件所在位置,是个隐藏文件

unix_socket_permissions:socket文件权限

authentication_timeout:验证超时报错

password_encryption:密码验证方式

shared_buffers:pgsql工作内存分配,一般在初始化的时候会自动设置好的,一般为物理内存的25%左右,因为pgsql是可以利用OS缓存的,为了避免二次缓存,设置为25%合适

huge_pages:pgsql默认每页8K大小,在数量非常多的时候,会影响CPU检索效率,所以这时候需要增大也的大小。

temp_buffers:临时缓冲区,用来缓冲临时表

work_mem:用来作排序和哈希操作的缓存

maintenance_work_mem:针对数据库维护语句,如创建删除索引等

autovacuum_work_mem:自动回收硬盘空间,最小1MB,如果是-1,那么使用maintenance_work_mem设置的值

max_stack_depth:服务器执行堆栈的最大安全深度

temp_file_limit:单个进程的临时文件限制

 

 

常用命令:

\l  :查看数据库列表

\du:查看用户

\dt:查看表

\d:查看表结构

\c:切换数据库

\di: 查看索引 

\c - user:切换用户

Logo

更多推荐