MySQL数据库的运维操作通常需要DBA具有较高的权限来执行管理任务。以下是一些常见的MySQL运维命令示例:
- 登录MySQL数据库:
mysql -u root -p
- 查看所有数据库:
SHOW DATABASES;
- 创建新数据库:
CREATE DATABASE my_database;
- 选择数据库:
USE my_database;
- 查看当前数据库中的表:
SHOW TABLES;
- 创建新表:
CREATE TABLE my_table (
id INT PRIMARY KEY,
name VARCHAR(100),
created_at DATETIME
);
- 查看表结构:
DESC my_table;
- 备份数据库:
mysqldump -u root -p my_database > my_database_backup.sql
- 恢复数据库:
mysql -u root -p my_database < my_database_backup.sql
- 优化表:
OPTIMIZE TABLE my_table;
- 检查表:
CHECK TABLE my_table;
- 查看当前用户权限:
SHOW GRANTS;
- 创建新用户:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
- 授权用户:
GRANT ALL PRIVILEGES ON my_database.* TO 'newuser'@'localhost';
- 刷新权限:
FLUSH PRIVILEGES;
- 停止MySQL服务:
sudo systemctl stop mysqld
- 启动MySQL服务:
sudo systemctl start mysqld
- 查看MySQL状态:
sudo systemctl status mysqld
- 设置MySQL自动启动:
sudo systemctl enable mysqld
- 查看MySQL版本:
mysql --version
这些命令提供了MySQL运维操作的基本视图。在实际环境中,DBA可能需要执行更复杂的任务,如性能优化、数据恢复、配置管理等,这些通常需要根据具体的环境和需求来编写相应的脚本和命令。