初始化数据库
su - pgsql/pgsql/pg12/bin/initdb -D /pgsql/pgdata -E UTF8 --locale=en_US.utf8 -U pgsql
官方启动
/pgsql/pg12/bin/pg_ctl -D /pgsql/pgdata -l logfile start
/pgsql/pg12/bin/pg_ctl -D /pgsql/pgdata -l /pgsql/pg12/pg.log start
/pgsql/pg12/bin/pg_ctl -D /pgsql/pgdata -l /pgsql/pg12/pg.log stop
###修改数据库参数
vim /pgsql/pgdata/postgresql.conf
#增加以下参数
data_directory = '/pgsql/pgdata'
listen_addresses = '*'
port = 5432
unix_socket_directories = '/pgsql/pgdata'
###修改客户端连接参数
vim /pgsql/pgdata/pg_hba.conf
###增加(标红)
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
##查看状态
ps -ef |grep postgresql
netstat -tpnl |grep 5432
##启动与关闭命令
su - pgsql
pg_ctl start
pg_ctl stop
基本使用
--登录
psql -h 192.168.x.x -p 5432 -U pgsql
输入 "help" 来获取帮助信息
查看版本
psql -V
\? --查看命令相关帮助
export LANG=zh_CN.UTF-8 --将显示语言设置为中文
--登录(指定数据库)
psql -h 192.168.x.x -p 5432 pgsql -d DBNAME
--新建表
create table kavin (name varchar(50));
insert into kavin values('哥');
insert into kavin values('数据库');
insert into kavin values('培训');
insert into kavin values('net.cn');
select * from kavin;
\h SQL帮助
附录:
psql命令使用
命令 说明
\h help \h create table
\d table_name 查看表(视图,索引,序列)结构
\du 查看用户列表
\dt 查询数据库所有表(非系统表)
\dS 列出系统表和索引
\di index_name 只查看指定索引
\df 列出函数
\dv 只显示视图
\ds 只显示序列
\dn 列出所有的schema
\db 显示所有的表空间
\dg 列出数据库的所有角色或用户
\dp或者\z 查看表的分配权限
\c [user_name] [db_name] 切换某用户到指定数据库
\timing on/off 显示执行sql的时间
\encoding encode_type 设置客户端编码
\pset [option [value] ] 输出格式设置
\l 显示所有数据库列表
\q 退出
\o filename 文本输出执行结果
\I filename 用于执行存储在外部文件的sql语句或命令
\x 数据按列展示,类似mysql的\G
自动补全:连续单击两次tab键
+:对比显示更加详细的信息,例如:\du+ \dt+ \d+
?/* :查询匹配通配符,例如:\d tb?
pgsql -E :可以显示命令执行的对应的SQL语句
\pset边框设置
\pset boder 0 :不带任何边框
\pset boder 1 :输出内容有边框
\pset boder 2 :带边框
\pset设置文本输出格式
\pset format unaligned (默认分隔符|)
\pset filesep ‘分隔符’ (例如:\t)




