pgsql常用操作
2024-08-27 10:07:29
docker run -e TZ="Asia/Shanghai" -d -t -i --name pgsql -p : --restart=always -e POSTGRES_PASSWORD=123456 -v /home/docker/data/pgsql:/var/lib/postgresql/data docker.io/postgres
pgsql备份:
--进入pgsql容器
docker exec -it 容器ID bash
--备份pgsql
/opt/rh/rh-postgresql95/root/usr/bin/pg_dump -h localhost -U postgres eibd_odc_test > /opt/eibd_odc_test.bak --备份指定模式数据
pg_dump -h localhost -U postgres -d 库名 -n 模式名 > /opt/test.bak
--拷贝文件至宿主机
docker cp 容器ID:/文件路径 .
--拷贝文件至容器
docker cp 文件路径 容器ID:/存放路径
--10.110.63.13恢复pgsql
/opt/rh/rh-postgresql95/root/usr/bin/psql -h localhost -U postgres eibd_odc_test < /opt/eibd_odc_test.bak
pgsql导出多张表:
docker exec 容器ID pg_dump -U 用户名 库名 -t 表名 -t 表名 ... > odc_bak_sql.sql
pgsql导入多张表:
docker exec 容器ID pg_dump -U 用户名 库名 -d < odc_bak_sql.sql
pgsl清空表数据及级联,不删除结构
TRUNCATE TABLE 表名 CASCADE;
--创建用户:
create user eibd_odc_user with PASSWORD 'eibd_odc_user,.'; --指定权限:
GRANT ALL PRIVILEGES ON DATABASE eibd_odc to eibd_odc_user; --根据模式给用户指定权限:
GRANT SELECT ON ALL TABLES IN SCHEMA public to dev;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public to dev;
--开启日志记录: alter system set logging_collector='on'; --然后重启pgsql服务show logging_collector;查询状态是否为on .创建一个用户名为readonly密码为ropass的用户 CREATE USER readonly WITH ENCRYPTED PASSWORD 'ropass'; .用户只读事务 alter user readonly set default_transaction_read_only=on; .把所有库的语言的USAGE权限给到readonly GRANT USAGE ON SCHEMA public to readonly; .授予select权限(这句要进入具体数据库操作在哪个db环境执行就授予那个db的权) grant select on all tables in schema public to readonly;
pgsql之连接数修改
--查看当前在使用的连接数
select count() from pg_stat_activity; --显示最大连接数
show max_connections; --显示系统保留用户数
show superuser_reserved_connections; --按照用户分组查看
select usename, count(*) from pg_stat_activity group by usename order by count(*) desc; --修改最大连接数(修改完成后需要重启pgsql服务)
alter system set max_connections=数量
docker run -e TZ="Asia/Shanghai" -d -t -i --name pgsql -p 5432:5432 --restart=always -e POSTGRES_PASSWORD=postgres,.1q -v /home/docker/data/pgsql:/var/lib/postgresql/data docker.io/postgres
pgsql设置免密码连接
设置所有主机执行数据库命令不需要输入密码: 修改配置文件:/var/lib/pgsql/data/pg_hba.conf 将里面第一条设置为: host all all all trust 重启数据库:systemctl restart postgresql 解释: 将host(远程连接)/local(本地连接)设置成md5(需要验证密码)或trust(不需要验证密码)
最新文章
- cpp 调用python
- 【转】SQLServerDBA十大必备工具---让生活轻松点
- Fedora 手动删除系统中不再需要的包
- spring注解 构造函数问题
- jQuery.autoComplete 多参数
- OpenSource
- c#基础语言编程-文件流操作
- Cortex-M3学习日志(四) -- UART0实验
- SQL Server索引进阶:第四级,页和区
- TCP/IP详细解释--TCP/IP可靠的原则 推拉窗 拥塞窗口
- VS2013调试的时候出现 “检测到在集成的托管管道模式下不适用的 ASP.NET 设置的解决方法”
- mybatis深入理解之 # 与 $ 区别以及 sql 预编译
- UUID那些事
- PMBook - 上课体会
- SQL Server 索引碎片产生原理重建索引和重新组织索引
- ubantu清理垃圾文件操作
- Redis哨兵(sentinel)模式搭建
- 洛谷P4053 [JSOI2007]建筑抢修
- CF1096D Easy Problem(DP)
- Ehcarts 与 百度地图结合时,如何获取bmap的实例对象?