文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【PG_PSQL】PSQL使用测试

2024-04-02 19:55

关注

--psql功能及应用
--创建用户,role默认没有登录权限
create user mydbuser with encrypted password 'mydbuser';
--or
create role mydbuser with encrypted password 'mydbuser';
alter role mydbuser with login;	
--创建表空间
mkdir -p /pgdata/10/data/pg_tbs/tbs_mydb
create tablespace tbs_mydb owner mydbuser location '/pgdata/10/data/pg_tbs/tbs_mydb';
--创建数据库
create database mydb with owner=mydbuser template=template0 encoding='UTF8' tablespace=tbs_mydb;
--赋权
grant all on database mydb to mydbuser with grant option;
grant all on tablespace tbs_mydb to mydbuser;
--查看角色信息
\du
SELECT * FROM pg_roles;
--删除角色
revoke all on database mydb from test;
drop role test;
--连接
psql mydb mydbuser
--列出数据库信息 pg_database
\l
--表空间列表  pg_tablespace
\db
--查看表信息 pg_class
create table test_1(id int4,name text,create_time timestamp without time zone default clock_timestamp());
alter table test_1 add primary key (id);
\d test_1
\dt+ test_1
insert into test_1(id,name) select n,n ||'_francs' from generate_series(1,300000) n;
insert into test_1 values(100001,'100001_francs');
--索引大小
\di+ test_1_pkey
--获取元命令
psql -E mydb mydbuser
--大数据量,copy(只能超级用户)比\copy性能高
psql mydb postgres
copy table_copy from '/home/postgres/test_copy_in.txt';
copy table_copy to '/home/postgres/table_copy_in.txt';
--csv 格式
copy table_copy to '/home/postgres/table_copy_in.csv' with csv header;
--A 取消格式化输出,-t只显示数据
 psql -At -c "select oid,relname,relfilenode from pg_class limit 2" mydb mydbuser
--执行相关脚本
psql mydb mydbuser -f xx.sql
--查看活动会话
select pid,usename,datname,query,client_addr from pg_stat_activity where pid<>pg_backend_pid() and state='active' order by query;
--查看等待事件
select pid,usename,datname,query,client_addr,wait_event_type,wait_event from pg_stat_activity where pid<>pg_backend_pid() and wait_event is not null order by wait_event_type;
--查看数据库连接数
select datname,usename,client_addr,count(*) from pg_stat_activity where pid<>pg_backend_pid group by 1,2,3 order by 1,2,4 desc;
--编辑 .psqlrc
\set active_session 'select pid,usename,datname,query,client_addr from pg_stat_activity where pid<>pg_backend_pid() and state=\'active\' order by query';
--执行:active_session 即可
--反复执行当前sql
\watch [seconds]
--查看当前时间
select now();
--psql 查看
psql --help
\?


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯