Linux服务器管理MySQL数据库的常见命

Linux服务器管理MySQL数据库的常见命

编程文章jaq1232025-08-05 1:18:193A+A-


在 Linux 服务器上管理 MySQL 数据库时,你可以使用各种命令来完成数据库创建、用户管理、查询、备份等任务。以下是管理 MySQL 数据库的常见命令,按功能分类整理。


1. 登录与退出 MySQL

1.1 登录 MySQL

bash

复制

mysql -u root -p
  • -u:指定用户名(如 root)。
  • -p:提示输入密码。

1.2 登录指定主机

bash

复制

mysql -h <服务器IP或域名> -u <用户名> -p
  • 示例:
  • bash
  • 复制
  • mysql -h 192.168.1.100 -u admin -p

1.3 退出 MySQL

sql

复制

exit;

或使用快捷键:

sql

复制

\q

2. 数据库管理

2.1 查看所有数据库

sql

复制

SHOW DATABASES;

2.2 创建数据库

sql

复制

CREATE DATABASE 数据库名;
  • 示例:
  • sql
  • 复制
  • CREATE DATABASE testdb;

2.3 删除数据库

sql

复制

DROP DATABASE 数据库名;
  • 示例:
  • sql
  • 复制
  • DROP DATABASE testdb;

2.4 使用指定数据库

sql

复制

USE 数据库名;
  • 示例:
  • sql
  • 复制
  • USE testdb;

3. 表管理

3.1 查看所有表

sql

复制

SHOW TABLES;

3.2 查看表结构

sql

复制

DESCRIBE 表名;

或:

sql

复制

SHOW COLUMNS FROM 表名;

3.3 创建表

sql

复制

CREATE TABLE 表名 (
    列名 数据类型 [约束],
    列名 数据类型 [约束]
);
  • 示例:
  • sql
  • 复制
  • CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100), created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );

3.4 删除表

sql

复制

DROP TABLE 表名;

3.5 清空表数据(保留表结构)

sql

复制

TRUNCATE TABLE 表名;

3.6 修改表

  1. 添加列
  2. sql
  3. 复制
  4. ALTER TABLE 表名 ADD 列名 数据类型 [约束];
  5. 示例:
  6. sql
  7. 复制
  8. ALTER TABLE users ADD phone VARCHAR(20);
  9. 删除列
  10. sql
  11. 复制
  12. ALTER TABLE 表名 DROP COLUMN 列名;
  13. 示例:
  14. sql
  15. 复制
  16. ALTER TABLE users DROP COLUMN phone;
  17. 修改列数据类型
  18. sql
  19. 复制
  20. ALTER TABLE 表名 MODIFY COLUMN 列名 新数据类型;
  21. 示例:
  22. sql
  23. 复制
  24. ALTER TABLE users MODIFY COLUMN email TEXT;

4. 数据管理

4.1 插入数据

sql

复制

INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);
  • 示例:
  • sql
  • 复制
  • INSERT INTO users (username, email) VALUES ('Alice', 'alice@example.com');

4.2 查询数据

  1. 查询全部数据:
  2. sql
  3. 复制
  4. SELECT * FROM 表名;
  5. 条件查询:
  6. sql
  7. 复制
  8. SELECT * FROM 表名 WHERE 条件;
  9. 示例:
  10. sql
  11. 复制
  12. SELECT * FROM users WHERE username = 'Alice';
  13. 限制返回行数:
  14. sql
  15. 复制
  16. SELECT * FROM 表名 LIMIT 数量;

4.3 更新数据

sql

复制

UPDATE 表名 SET 列名1=值1, 列名2=值2 WHERE 条件;
  • 示例:
  • sql
  • 复制
  • UPDATE users SET email = 'alice@newdomain.com' WHERE username = 'Alice';

4.4 删除数据

sql

复制

DELETE FROM 表名 WHERE 条件;
  • 示例:
  • sql
  • 复制
  • DELETE FROM users WHERE id = 1;

5. 用户与权限管理

5.1 查看所有用户

sql

复制

SELECT User, Host FROM mysql.user;

5.2 创建用户

sql

复制

CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';
  • 示例:
  • sql
  • 复制
  • CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'password123';

5.3 授权用户权限

sql

复制

GRANT 权限类型 ON 数据库名.表名 TO '用户名'@'主机';
  • 示例:
  • sql
  • 复制
  • GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';

5.4 撤销权限

sql

复制

REVOKE 权限类型 ON 数据库名.表名 FROM '用户名'@'主机';
  • 示例:
  • sql
  • 复制
  • REVOKE ALL PRIVILEGES ON testdb.* FROM 'testuser'@'localhost';

5.5 删除用户

sql

复制

DROP USER '用户名'@'主机';
  • 示例:
  • sql
  • 复制
  • DROP USER 'testuser'@'localhost';

5.6 刷新权限

sql

复制

FLUSH PRIVILEGES;
  • 该命令用于使权限更改立即生效。

6. 数据库备份与恢复

6.1 备份数据库

使用 mysqldump 命令:

bash

复制

mysqldump -u 用户名 -p 数据库名 > 备份文件.sql
  • 示例:
  • bash
  • 复制
  • mysqldump -u root -p testdb > backup.sql

6.2 恢复数据库

使用 mysql 命令导入备份文件:

bash

复制

mysql -u 用户名 -p 数据库名 < 备份文件.sql
  • 示例:
  • bash
  • 复制
  • mysql -u root -p testdb < backup.sql

7. 状态与性能监控

7.1 查看数据库状态

sql

复制

SHOW STATUS;

7.2 查看当前连接用户

sql

复制

SHOW PROCESSLIST;

7.3 查看数据库版本

sql

复制

SELECT VERSION();

7.4 查看服务器时间

sql

复制

SELECT NOW();

8. 修改 MySQL 配置

8.1 修改 MySQL 配置文件

  1. 默认配置文件路径:
  2. Debian/Ubuntu:/etc/mysql/my.cnf
  3. CentOS/RHEL:/etc/my.cnf
  4. 修改配置后,需重启 MySQL 服务:
  5. bash
  6. 复制
  7. sudo systemctl restart mysql

9. 常用快捷命令

功能

命令

登录 MySQL

mysql -u 用户名 -p

列出所有数据库

SHOW DATABASES;

列出当前数据库的表

SHOW TABLES;

查看表结构

DESCRIBE 表名;

查看当前用户

SELECT USER();

查看当前连接信息

SHOW PROCESSLIST;

退出 MySQL

exit; 或 \q


以上命令涵盖了 MySQL 数据库常见的管理任务。通过熟练使用这些命令,可以高效地管理 Linux 服务器上的 MySQL 数据库。

点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21