数据库操作命令

database

DB commands



常用数据库操作命令

目录

  • MySQL
  • PostgreSQL


MySQL

  • 基础命令
  • 配置命令
  • 备份与还原


基础命令

Key

Command

清屏

system clear
Ctrl + l (滚屏[1])

登录

mysql -u root -p

切换数据库

USE dbname

查看数据库

SHOW DATABASES

查看表

SHOW TABLES

查看表结构

DESC tb_nameSHOW COLUMNS FROM tb_name

退出

quitexitq

帮助

help


配置命令

Key

Command

查看可用字符集

SHOW CHARSET

查看默认字符集

SHOW VARIABLES LIKE "character_set_%"
SHOW VARIABLES LIKE "collation_%"

设置默认字符集

SET NAMES "utf8mb4"[2]

修改数据库字符集

ALTER DATABASE db_name DEFAULT CHARACTER SET "utf8mb4"

修改表字符集

ALTER TABLE tb_name CONVERT CHARACTER SET "utf8mb4"

修改字段字符集

ALTER TABLE tb_name MODIFY field_name field_properties CHARACTER SET "utf8mb4"

note:

  • 在mysql中查看系统路径的方法是通过 system + 系统命令 ls

  • SET NAMES "utf8mb4" 相当于

    • SET character_set_client = utf8;
    • SET character_set_connection = utf8;
    • SET character_set_results = utf8;
    • SET collation_connection = utf8

  • MySQL 配置文件中字符集相关变量

    # 客户端请求数据的字符集

    character_set_client

    # 从客户端接收到数据,然后传输的字符集

    character_set_connection

    # 默认数据库的字符集,无论默认数据库如何改变,都是这个字符集;如果没有默认数据库,那就使用 character_set_server 指定的字符集,这个变量建议由系统自己管理,不要人为定义。

    character_set_database

    # 把操作系统上的文件名转化成此字符集,即把 character_set_client 转换 character_set_filesystem, 默认 binary 是不做任何转换的

    character_set_filesystem

    # 结果集的字符集

    mcharacter_set_results

    # 数据库服务器的默认字符集

    character_set_server

    # 存储系统元数据的字符集,总是 utf8,不需要设置

    character_set_system

  • MySQL 8.0 默认的是 utf8mb4_0900_ai_ci,属于 utf8mb4_unicode_ci 中的一种,具体含义如下:

    • uft8mb4 表示用 UTF-8 编码方案,每个字符最多占 4 个字节。
    • 0900 指的是 Unicode 校对算法版本。(Unicode 归类算法是用于比较符合 Unicode 标准要求的两个 Unicode 字符串的方法)。
    • ai 指的是口音不敏感。也就是说,排序时 e,è,é,êë 之间没有区别。
    • ci 表示不区分大小写。也就是说,排序时 pP 之间没有区别。

  • 如果需要重音灵敏度和区分大小写,则可以使用 utf8mb4_0900_as_cs 代替。

备份与还原

Key

Command

备份

mysqldump -u root -p db_name tb_name1 [tb2 tb3...] > db_tables.sql(表备份)
mysqldump -u root -p --databases DB1 [DB2 DB3...] > db_backup.sql(数据库备份)
mysqldump -u root -p --all-databases > db_all.sql(备份所有数据库)

还原

mysql -u root -p db_name < db_backup.sql

note:

  • 登录MySQL, 可以执行 source db_backup.sql还原数据库;
  • --databases-B 指定数据库,可以指定多个库;(备份单个数据库时不加改参数, 还原时需要手动创建数据库)
  • --all-databases-A 备份所有数据库;


PostgreSQL

  • 常用命令
  • 查看命令
  • 备份与恢复


常用命令

Key

Command

清屏

Ctrl + l (滚屏[1:1])

登录

psql -U username [-d db_name] [-h db_host] [-p db_port]

查看数据库

l

查看表

dt

切换数据库

c db_name [db_user]

显示历史命令

s [file]

退出

q

帮助

? [commands]

SQL语法

h [sql_name]

修改用户密码

password [username]

显示 /修改字符集

encoding [utf8]


查看命令

Key

Command

查看数据库

l

查看结构

d tb_name

查看所有

d

查看表

dt

查看角色(roles)

dgdu

查看模式(schemas)

dn

查看索引(indexes)

di

查看序列(sequences)

ds

查看视图(views)

dv

查看类型(types)

dT

查看访问权限(access)

dpz

note:

  • + = 显示额外细节(表大小和表描述等)
  • S = 显示系统对象
  • 比如:

    • dt 查看表, dt+ 查看当前库所有表细节,dt+S 查看所有表细节(当前库和系统库)


备份与恢复

Key

Command

备份

pg_dump -U username db_name > db_backup.sql
pg_dump -U username -Fc db_name > db_backup.tar

还原

psql -U username -d db_name < db_backup.sql

恢复

pg_restore -U username -d db_name < db_backup.tar

PostgreSQL 数据库备份与还原



Reference

  • https://blog.csdn.net/weixin_38004638/article/details/109291324


  1. 滚屏,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息。 ↩︎ ↩︎

  2. utf8是MySQL中的一种字符集,表示用UTF-8编码方案,每个字符最多占3个字节。而uft8mb4每个字符最多占4个字节。 ↩︎

以上是 数据库操作命令 的全部内容, 来源链接: utcz.com/z/536066.html

回到顶部