温馨提示×

MariaDB Linux版有哪些常用命令

小樊
42
2025-10-01 15:46:30
栏目: 云计算

MariaDB Linux版常用命令分类整理

一、服务管理命令

用于控制MariaDB服务的启动、停止、重启及状态查看,是日常运维的基础操作。

  • 启动服务:适用于基于Systemd的Linux发行版(如CentOS 7+、Ubuntu 16.04+),命令为sudo systemctl start mariadb;旧版本(如CentOS 6)可使用sudo service mariadb start
  • 停止服务:Systemd系统用sudo systemctl stop mariadb,SysVinit系统用sudo service mariadb stop
  • 重启服务:Systemd系统用sudo systemctl restart mariadb,SysVinit系统用sudo service mariadb restart
  • 查看服务状态:Systemd系统用sudo systemctl status mariadb(显示“active (running)”表示运行中),SysVinit系统用sudo service mariadb status
  • 设置开机自启:Systemd系统用sudo systemctl enable mariadb(开机自动启动);旧版本用sudo chkconfig mariadb on

二、登录与退出数据库

通过命令行客户端连接MariaDB服务器或退出会话。

  • 登录数据库:使用mysql -u 用户名 -p命令(如mysql -u root -p),输入命令后会提示输入密码,验证通过后进入MariaDB命令行界面(提示符为MariaDB [(none)]>)。
  • 退出数据库:在MariaDB命令行中输入\qQUIT(大小写均可),按回车键退出会话。

三、数据库操作命令

管理数据库的创建、删除、查看及切换。

  • 创建数据库:使用CREATE DATABASE 数据库名;语句(如CREATE DATABASE mydb;),执行后会在MariaDB中创建一个空数据库。
  • 查看所有数据库:使用SHOW DATABASES;语句,列出当前MariaDB实例中的所有数据库(包括系统默认的information_schemamysql等)。
  • 选择数据库:使用USE 数据库名;语句(如USE mydb;),切换到指定数据库,后续操作将针对该数据库执行。
  • 删除数据库:使用DROP DATABASE 数据库名;语句(如DROP DATABASE mydb;),谨慎使用,删除后数据库及所有数据将永久丢失。

四、数据表操作命令

管理数据库中的数据表(结构化数据容器)。

  • 创建数据表:在选定数据库中使用CREATE TABLE 表名 (列1 数据类型, 列2 数据类型, ...);语句(如CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100));),定义表的列名、数据类型及约束(如主键、自增)。
  • 查看所有数据表:使用SHOW TABLES;语句,列出当前数据库中的所有数据表。
  • 查看表结构:使用DESCRIBE 表名;DESC 表名;语句(如DESC users;),显示表的列信息(包括列名、数据类型、是否允许NULL、键类型等)。
  • 删除数据表:使用DROP TABLE 表名;语句(如DROP TABLE users;),谨慎使用,删除后表及所有数据将永久丢失。

五、数据操作命令

对数据表中的数据进行增删改查(CRUD)。

  • 插入数据:使用INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);语句(如INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com');),向表中插入一行数据。
  • 查询数据:使用SELECT 列1, 列2, ... FROM 表名 WHERE 条件;语句(如SELECT * FROM users;查询所有数据,SELECT name, email FROM users WHERE id = 1;查询指定条件的数据),检索符合条件的数据。
  • 更新数据:使用UPDATE 表名 SET 列1 = 新值1, 列2 = 新值2, ... WHERE 条件;语句(如UPDATE users SET email = 'new@example.com' WHERE id = 1;),修改符合条件的数据。
  • 删除数据:使用DELETE FROM 表名 WHERE 条件;语句(如DELETE FROM users WHERE id = 1;),删除符合条件的数据,谨慎使用无WHERE子句的语句,否则会删除表中所有数据。

六、用户与权限管理命令

管理数据库用户账号及访问权限,保障数据安全。

  • 创建用户:使用CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';语句(如CREATE USER 'liwh'@'localhost' IDENTIFIED BY '123456';),创建一个仅能从本地登录的用户。
  • 授权用户:使用GRANT 权限列表 ON 数据库.表名 TO '用户名'@'主机名';语句(如GRANT SELECT, INSERT ON mydb.users TO 'liwh'@'localhost';授予查询和插入权限,GRANT ALL PRIVILEGES ON *.* TO 'liwh'@'localhost';授予所有数据库所有表的完全权限),为用户分配指定权限。
  • 查看用户权限:使用SHOW GRANTS FOR '用户名'@'主机名';语句(如SHOW GRANTS FOR 'liwh'@'localhost';),查看用户的权限列表。
  • 撤销用户权限:使用REVOKE 权限列表 ON 数据库.表名 FROM '用户名'@'主机名';语句(如REVOKE SELECT ON mydb.users FROM 'liwh'@'localhost';),撤销用户的指定权限。
  • 修改用户密码:作为root用户登录后,使用SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');语句(如SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');),修改指定用户的密码。

七、备份与恢复命令

通过mysqldump工具实现数据库的备份与恢复,防止数据丢失。

  • 备份数据库:使用mysqldump -u 用户名 -p 数据库名 > 备份文件.sql;语句(如mysqldump -u root -p mydb > mydb_backup.sql;),将指定数据库的结构和数据导出到SQL文件中。
  • 备份表:使用mysqldump -u 用户名 -p 数据库名 表名 > 表备份文件.sql;语句(如mysqldump -u root -p mydb users > users_backup.sql;),仅备份指定表的数据。
  • 恢复数据库:使用mysql -u 用户名 -p 数据库名 < 备份文件.sql;语句(如mysql -u root -p mydb < mydb_backup.sql;),将备份文件中的数据导入到指定数据库中(需提前创建数据库)。
  • 恢复表:使用mysql -u 用户名 -p 数据库名 < 表备份文件.sql;语句(如mysql -u root -p mydb < users_backup.sql;),恢复指定表的数据。

0