繁星点点 Logo 繁星点点

数据库常用命令合集

记录一些数据库常用的命令合集

约 6 分钟阅读 作者: 繁星点点
数据库常用命令合集

MySQL和MariaDB常用命令

数据库操作命令描述
MySQL更新软件包列表sudo apt update更新可用软件包列表
安装 MySQL 服务器sudo apt install mysql-server安装 MySQL 服务器
启动 MySQL 服务sudo systemctl start mysql启动 MySQL 服务
检查 MySQL 服务状态sudo systemctl status mysql检查 MySQL 服务的运行状态
运行安全安装脚本sudo mysql_secure_installation配置 MySQL 安全选项
登录 MySQLsudo mysql -u root -p登录 MySQL,输入 root 用户密码
MariaDB更新软件包列表sudo apt update更新可用软件包列表
安装 MariaDB 服务器sudo apt install mariadb-server安装 MariaDB 服务器
启动 MariaDB 服务sudo systemctl start mariadb启动 MariaDB 服务
检查 MariaDB 服务状态sudo systemctl status mariadb检查 MariaDB 服务的运行状态
运行安全安装脚本sudo mysql_secure_installation配置 MariaDB 安全选项
登录 MariaDBsudo mysql -u root -p登录 MariaDB,输入 root 用户密码
功能分类命令描述
登录数据库mysql -u 用户名 -p登录 MySQL,使用指定的用户名,-p 会提示输入密码
显示数据库SHOW DATABASES;列出当前 MySQL 服务器中的所有数据库
使用数据库USE 数据库名;切换到指定数据库
创建数据库CREATE DATABASE 数据库名;创建一个新的数据库
删除数据库DROP DATABASE 数据库名;删除指定数据库
显示当前数据库SELECT DATABASE();显示当前正在使用的数据库
显示数据库表SHOW TABLES;列出当前数据库中的所有表
查看表结构DESCRIBE 表名;查看表的结构 (字段、类型、主键等)
查看表数据SELECT * FROM 表名;查看表里的数据
创建表CREATE TABLE 表名 (字段1 数据类型, 字段2 数据类型, ...);创建一张表,指定列和数据类型
删除表DROP TABLE 表名;删除指定的表
插入数据INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);插入一条数据
查询数据SELECT 字段1, 字段2 FROM 表名 WHERE 条件;查询表中的数据,可以使用条件过滤
更新数据UPDATE 表名 SET 字段1=值1 WHERE 条件;更新指定的表数据
删除数据DELETE FROM 表名 WHERE 条件;删除符合条件的数据
显示创建表语句SHOW CREATE TABLE 表名;显示指定表的创建语句
清空表数据TRUNCATE TABLE 表名;清空表中的所有数据,但保留表结构
查看索引SHOW INDEX FROM 表名;查看表中所有的索引
创建索引CREATE INDEX 索引名 ON 表名 (字段);创建索引,提升查询速度
删除索引DROP INDEX 索引名 ON 表名;删除指定的索引
备份数据库mysqldump -u 用户名 -p 数据库名 > 备份文件.sql备份数据库,将数据库内容导出为 .sql 文件
恢复数据库mysql -u 用户名 -p 数据库名 < 备份文件.sql恢复数据库,将 .sql 文件导入指定数据库
创建用户CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';创建一个新的 MySQL 用户
删除用户DROP USER '用户名'@'localhost';删除 MySQL 用户
授权权限GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'localhost';授予用户对某个数据库的所有权限
显示用户权限SHOW GRANTS FOR '用户名'@'localhost';显示指定用户的权限
撤销权限REVOKE ALL PRIVILEGES ON 数据库名.* FROM '用户名'@'localhost';撤销指定用户对某个数据库的权限
刷新权限FLUSH PRIVILEGES;刷新 MySQL 权限表,使权限更改生效
查看服务器状态SHOW STATUS;查看 MySQL 服务器的状态和性能指标
查看数据库引擎SHOW ENGINES;显示 MySQL 支持的所有存储引擎
查看连接信息SHOW PROCESSLIST;显示当前 MySQL 的所有连接信息
  • 大多数 SQL 语句都以分号 ; 结尾。
  • 如果 MySQL 的权限系统发生变动(如添加或撤销用户权限),建议运行 FLUSH PRIVILEGES; 以刷新权限。

忘记密码后重置密码

  1. 编辑配置文件
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf  # MariaDB
# 或
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf       # MySQL

[mysqld]段落下添加配置开启无密码登录:

[mysqld]
skip-grant-tables
skip-networking
  1. 重启服务
sudo systemctl restart mysql
  1. 无密码登录并修改密码
mysql -u root

执行SQL命令:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  1. 恢复配置文件:删除刚添加的两行,然后重启

  2. 重启服务

sudo systemctl restart mysql
  1. 使用新密码登录
mysql -u root -p

SQLite常用命令

功能分类命令描述
安装 SQLitesudo apt install sqlite3在 Linux(Ubuntu)中安装 SQLite
连接 SQLitesqlite3 数据库名.db连接到 SQLite 数据库(如果不存在则创建)
退出 SQLite.quit退出 SQLite 命令行工具
显示数据库表.tables显示当前数据库中的所有表
查看表结构.schema 表名显示指定表的创建语句
创建表CREATE TABLE 表名 (字段1 数据类型, 字段2 数据类型, ...);创建一张表,指定字段和数据类型
插入数据INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);插入一条数据
查询数据SELECT 字段1, 字段2 FROM 表名 WHERE 条件;查询表中的数据,可以使用条件过滤
更新数据UPDATE 表名 SET 字段1=值1 WHERE 条件;更新指定的表数据
删除数据DELETE FROM 表名 WHERE 条件;删除符合条件的数据
删除表DROP TABLE 表名;删除指定的表
查看索引PRAGMA index_list(表名);查看指定表的索引
创建索引CREATE INDEX 索引名 ON 表名 (字段);创建索引,提升查询速度
删除索引DROP INDEX 索引名;删除指定的索引
导出数据库.output 文件名.sql.dump导出整个数据库,保存到指定的 SQL 文件
导入数据库.read 文件名.sql从 SQL 文件导入数据到当前数据库
打开数据库.open 数据库名.db打开或切换到另一个数据库

PostgreSQL常用命令

操作命令说明
安装 PostgreSQLsudo apt update
sudo apt install postgresql postgresql-contrib
更新包管理器并安装 PostgreSQL 和相关插件
启动 PostgreSQL 服务sudo systemctl start postgresql启动 PostgreSQL 服务
重启 PostgreSQL 服务sudo systemctl restart postgresql重启 PostgreSQL 服务
停止 PostgreSQL 服务sudo systemctl stop postgresql停止 PostgreSQL 服务
检查 PostgreSQL 状态sudo systemctl status postgresql检查 PostgreSQL 服务的当前状态
设置 PostgreSQL 开机启动sudo systemctl enable postgresql设置 PostgreSQL 随系统启动自动运行
切换到 postgres 用户sudo -i -u postgrespostgres 管理员用户登录
以指定用户登录psql -U 用户名 -d 数据库名以指定用户登录指定数据库
进入 PostgreSQL shellpsql进入 PostgreSQL 的交互式命令行 shell
退出 PostgreSQL shell\q退出 PostgreSQL shell
查看数据库列表\l显示当前 PostgreSQL 实例中的所有数据库
创建数据库CREATE DATABASE 数据库名;创建一个新数据库
删除数据库DROP DATABASE 数据库名;删除指定的数据库
查看表格列表\dt显示当前数据库中的所有表格
创建表格CREATE TABLE 表格名 (列1 数据类型, 列2 数据类型, ...);在数据库中创建一个新表格,并定义其列和数据类型
插入数据INSERT INTO 表格名 (列1, 列2, ...) VALUES (值1, 值2, ...);向表格中插入一条数据记录
查询数据SELECT * FROM 表格名;从表格中查询所有数据
创建用户CREATE USER 用户名 WITH PASSWORD '密码';创建一个新用户,并为其设置密码
给用户授权GRANT ALL PRIVILEGES ON DATABASE 数据库名 TO 用户名;为指定的用户授权访问和操作指定数据库的所有权限
删除用户DROP USER 用户名;删除一个指定的用户
修改用户密码ALTER USER 用户名 WITH PASSWORD '新密码';修改指定用户的密码
备份数据库pg_dump 数据库名 > 备份文件名.sql将指定数据库备份到一个 .sql 文件中
还原数据库psql 数据库名 < 备份文件名.sql从备份的 .sql 文件还原数据库

标签