当前位置:首页 > 技术文章 > 正文内容

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

douba32周前 (08-21)技术文章7


在 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 数据库。

相关文章

Linux远程文件传输神器:rz / sz 全指南(含实操示例)

原文链接:「链接」在日常使用 Linux 服务器时,是否常常因为文件传输问题而苦恼?复制粘贴效率低,FTP 配置复杂?今天推荐一套简单高效的终端工具组合:rz 和 sz。这两个命令搭配使用,能在本地与...

linux下远程管理命令-关机与重启(linux远程主机关闭连接)

08.linux下远程管理命令-关机与重启关机与重启shutdown 命令可以安全关闭或者重启系统shutdown 命令格式为:shutdown 选项 时间-r 选项可以重新启动系统如果不制定选项和参...

Windows下常用的远程Linux连接工具

点击上方蓝字,关注↑“空桥”__在Windows系统上,想要通过远程连接 Linux 服务器相互传送文件,那么你需要一个简称 SSH 的 Secure Shell 软件。SSH 使用公钥加密来认证远程...

如何在 Linux 中查找大文件和目录?这些命令直接起飞!

在 Linux 系统中,磁盘空间管理是一项至关重要的任务。随着时间的推移,系统可能会积累大量文件和目录,导致磁盘空间不足。无论是清理无用文件、释放空间,还是定位占用大量磁盘空间的“罪魁祸首”,掌握查找...

测试人员如何在linux服务器中查询mysql日志?

测试工程师在测试软件的过程中,流程往往是先接口测试,接着就是功能性测试。在做功能性测试的时候,往往有这么一个工作场景,就是出现错误后,我们怎么快速排除数据库报错。举例某个电商网站,当我们文本框中输入“...

Linux通过netstat查看服务及监听端口总结

在日常开发或者运维过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。netstat命令一些常用参数说明如下:-a 或–all 显示...