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

Linux 服务器上管理 MySQL 数据库,需要掌握一系列常用命令,以便高效完成数据库的安装、配置、管理和维护工作。以下是 MySQL 数据库管理的常见命令及其使用方法。


1. MySQL 服务管理

1.1 启动、停止、重启 MySQL 服务

管理 MySQL 服务的基本操作:

bash

复制

# 启动 MySQL 服务
sudo systemctl start mysql

# 停止 MySQL 服务
sudo systemctl stop mysql

# 重启 MySQL 服务
sudo systemctl restart mysql

# 查看 MySQL 服务状态
sudo systemctl status mysql

2. 登录和退出 MySQL

2.1 登录 MySQL

登录到 MySQL 数据库,需提供用户名和密码:

bash

复制

# 使用 root 用户登录
mysql -u root -p
  • 系统会提示输入 root 用户的密码。

2.2 退出 MySQL

从 MySQL Shell 中退出:

sql

复制

exit;

sql

复制

quit;

3. 数据库管理

3.1 查看所有数据库

显示当前服务器上的所有数据库:

sql

复制

SHOW DATABASES;

3.2 创建数据库

创建一个新的数据库:

sql

复制

CREATE DATABASE 数据库名;

3.3 删除数据库

删除一个数据库(需谨慎操作):

sql

复制

DROP DATABASE 数据库名;

3.4 使用某个数据库

切换到指定的数据库:

sql

复制

USE 数据库名;

4. 数据表管理

4.1 查看数据库中的所有表

列出当前数据库中的所有表:

sql

复制

SHOW TABLES;

4.2 创建表

创建一个名为 users 的表:

sql

复制

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) NOT NULL UNIQUE,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

4.3 查看表结构

查看表的字段定义和结构:

sql

复制

DESCRIBE 表名;

sql

复制

SHOW COLUMNS FROM 表名;

4.4 删除表

删除一个表(会丢失所有数据):

sql

复制

DROP TABLE 表名;

5. 数据管理

5.1 插入数据

向表中插入一行数据:

sql

复制

INSERT INTO 表名 (字段1, 字段2, 字段3)
VALUES ('值1', '值2', '值3');

5.2 查询数据

从表中查询数据:

sql

复制

SELECT * FROM 表名;

带条件查询:

sql

复制

SELECT * FROM 表名 WHERE 字段1 = '某值';

5.3 更新数据

更新表中的数据:

sql

复制

UPDATE 表名
SET 字段1 = '新值'
WHERE 字段2 = '条件值';

5.4 删除数据

删除表中的数据:

sql

复制

DELETE FROM 表名 WHERE 字段1 = '某值';

6. 用户管理

6.1 创建用户

创建一个新用户并设置密码:

sql

复制

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
  • 主机名
    • 'localhost':仅允许本地访问。
    • '%':允许任意主机访问。

6.2 查看用户权限

显示用户的权限信息:

sql

复制

SHOW GRANTS FOR '用户名'@'主机名';

6.3 授予权限

授予用户对某数据库的访问权限:

sql

复制

GRANT 权限 ON 数据库名.* TO '用户名'@'主机名';

常见权限:

  • ALL PRIVILEGES:所有权限。
  • SELECT:查询权限。
  • INSERT:插入权限。
  • UPDATE:更新权限。
  • DELETE:删除权限。

刷新权限:

sql

复制

FLUSH PRIVILEGES;

6.4 撤销权限

撤销用户权限:

sql

复制

REVOKE 权限 ON 数据库名.* FROM '用户名'@'主机名';

6.5 删除用户

删除用户:

sql

复制

DROP USER '用户名'@'主机名';

7. 数据备份与恢复

7.1 数据库备份

使用 mysqldump 备份数据库:

bash

复制

# 备份单个数据库
mysqldump -u root -p 数据库名 > 数据库名.sql

# 备份所有数据库
mysqldump -u root -p --all-databases > all_databases.sql

7.2 数据库恢复

从备份文件恢复数据库:

bash

复制

# 恢复到指定数据库
mysql -u root -p 数据库名 < 数据库名.sql

# 恢复所有数据库
mysql -u root -p < all_databases.sql

8. 配置与优化

8.1 修改 MySQL 配置文件

MySQL 的主要配置文件路径:

bash

复制

/etc/mysql/my.cnf

常见配置:

  • 最大连接数

    ini

    复制

    max_connections = 500
    
  • 查询缓存

    ini

    复制

    query_cache_size = 64M
    query_cache_type = 1
    

8.2 重载配置

修改配置文件后,需重启 MySQL 服务:

bash

复制

sudo systemctl restart mysql

9. 性能监控与优化

9.1 查看运行状态

使用 SHOW STATUS 查看服务器状态:

sql

复制

SHOW STATUS;

9.2 查看当前连接

查看当前活动连接:

sql

复制

SHOW PROCESSLIST;

9.3 优化表

优化表以释放未使用的空间并提高性能:

sql

复制

OPTIMIZE TABLE 表名;

10. 常用工具

10.1 MySQL 命令行管理工具

  • MySQL CLI:默认的命令行工具。
  • MySQL Workbench:图形化管理工具,支持 SQL 查询、数据库建模等。

10.2 性能分析工具

  • Percona Toolkit:用于查询性能分析和数据库优化。
  • MySQLTuner:快速分析 MySQL 配置和性能的脚本。

总结

通过掌握以上常见命令,您可以轻松完成 MySQL 数据库的日常管理任务,包括数据库和用户管理、数据操作、备份与恢复、性能优化等。对于实际生产环境,建议定期备份数据库并优化配置,以保证系统的稳定性和高效运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网硕互联的小客服

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值