文章目录
- docker
- 测试网络可达性
- 检查端口是否开放
- PgSql
docker
docker logout IP地址:端口号
docker login IP地址:端口号桥接模式bridge启动容器
docker run -d -p 外部端口号:内部端口号(配置文件中的端口号) --name 容器名称 -v /data/docker/conf/application.yml:/app/config/application.yml(挂载配置文件到容器内) -v /data/test:/data/test(挂载配置文件夹到容器内) -e PARAMS="--spring.config.location=/app/config/application.yml" 镜像别名:版本号宿主机本地模式host模式启动
docker run -d --name 容器名称 --network=host -v /data/docker/conf/application.yml:/app/config/application.yml(挂载配置文件到容器内) -v /data/test:/data/test(挂载配置文件夹到容器内) -e PARAMS="--spring.config.location=/app/config/application.yml" 镜像别名:版本号docker exec -it <container_id> /bin/bash命令。其中,<container_id>需要替换为目标容器的ID或名称。
docker save -o 导出名.tar 镜像ID/别名:版本号
docker load -i xxx.tar
docker tag 镜像ID 别名:版本号docker ps:列出正在运行的容器。
docker ps -a:列出所有的容器,包括停止的。
docker start <container_id>:启动容器。
docker stop <container_id>:停止容器。
docker restart <container_id>:重启容器。
docker rm <container_id>:删除容器。
docker exec -it <container_id> <command>:在运行的容器中执行命令。查看容器的日志。
docker logs -tf -n 100 容器名
测试网络可达性
IPV4:traceroute -n -T -p 端口号 IPV4地址
IPV6:traceroute6 -n -T -p 端口号 IPV6地址
ping IPV4地址
ping6 IPV6地址
检查端口是否开放
telnet IP地址 端口号
nc -zv IP地址 端口号
PgSql
连接到数据库:
psql -U <username> -d <database>:以指定用户连接到指定数据库。
psql -h <hostname> -U <username> -d <database>:连接到远程主机上的数据库。
退出 psql:
\q:退出 psql 控制台。
数据库操作:
CREATE DATABASE <database_name>;:创建新数据库。
DROP DATABASE <database_name>;:删除数据库。
\l:列出所有数据库。
\c <database_name>:连接到指定数据库。
查询public模式下所有表名:
select tablename from pg_tables where schemaname=‘public’;
表操作:
CREATE TABLE <table_name> (<column_name> <data_type>, ...);:创建新表。
DROP TABLE <table_name>;:删除表。
\dt:列出当前数据库中的所有表。
\d <table_name>:显示指定表的结构。
查询某表所有字段
select * from information_schema.columns where table_schema='模式名称' and table_name='表名';
查询某表字段个数
select count(*) from information_schema.columns where table_schema='模式名称' and table_name='表名';
case条件操作
CASE WHEN a=1 THEN ‘one’ WHEN a=2 THEN ‘two’ ELSE ‘other’ END name
数据操作:
INSERT INTO <table_name> (<column1>, <column2>, ...) VALUES (<value1>, <value2>, ...);:插入新数据。
SELECT * FROM <table_name>;:从表中检索数据。
UPDATE <table_name> SET <column1> = <value1>, <column2> = <value2>, ... WHERE <condition>;:更新数据。
DELETE FROM <table_name> WHERE <condition>;:删除数据。
序列操作:
CREATE SEQUENCE IF NOT EXISTS 序列名 START 1;创建自增序列
DROP SEQUENCE IF NOT EXISTS 序列名;删除序列
ALTER SEQUENCE 序列名 RESTART WITH 1;修改序列初始值
SELECT NEXTVAL('序列名');验证序列下一个值
索引操作:
CREATE INDEX <index_name> ON <table_name> (<column_name>);:创建索引。
DROP INDEX <index_name>;:删除索引。
\di:列出当前数据库中的所有索引。
用户和权限管理:
CREATE USER <username> WITH PASSWORD '<password>';:创建新用户。
DROP USER <username>;:删除用户。
GRANT <privileges> ON <table_name> TO <username>;:授予用户权限。
REVOKE <privileges> ON <table_name> FROM <username>;:撤销用户权限。
备份和恢复:
pg_dump -U <username> -d <database> > <backup_file.sql>:备份数据库。
psql -U <username> -d <database> -f <backup_file.sql>:从备份文件中恢复数据库。
pg_dump -U username -d dbname -t table_name -a -f table_name.sql:导出指定表数据。
-t 参数指定要导出的表名,-a 参数指定只导出数据而不导出表结构,-f 参数指定导出数据的文件名。