Linux环境下MySQL数据库命令详解
MySQL服务管理命令
在Linux系统中,MySQL数据库服务的启动、停止和重启是基础操作,通过systemctl命令可以高效管理MySQL服务,启动MySQL服务使用sudo systemctl start mysql,停止服务则执行sudo systemctl stop mysql,若需重启服务,命令为sudo systemctl restart mysql,查看MySQL服务状态可通过sudo systemctl status mysql,该命令会显示服务的运行状态及最近日志,对于开机自启设置,使用sudo systemctl enable mysql可启用自动启动,而sudo systemctl disable mysql则取消自启,这些命令是数据库日常维护的核心,确保服务稳定运行。

登录与退出MySQL数据库
连接MySQL数据库需使用mysql命令,基本语法为mysql -u 用户名 -p,以root用户登录时,输入mysql -u root -p,系统会提示输入密码,登录成功后,MySQL提示符会从变为mysql>,此时可执行SQL语句,退出数据库则使用exit或quit命令,也可通过快捷键Ctrl+D直接退出,若需远程连接MySQL,需添加-h参数指定主机地址,如mysql -u root -p -h 192.168.1.100,同时确保远程服务器已开放MySQL端口(默认3306)并授予用户远程访问权限。
数据库与表的基本操作
MySQL中,数据库和表的管理是数据存储的基础,创建数据库使用CREATE DATABASE 数据库名;,例如CREATE DATABASE example_db;,若需判断数据库是否存在再创建,可使用CREATE DATABASE IF NOT EXISTS example_db;,选择数据库通过USE 数据库名;实现,如USE example_db;,删除数据库则需谨慎,命令为DROP DATABASE 数据库名;,建议先备份数据。
表的操作需在选定数据库后执行,创建表时需定义字段名、数据类型及约束,
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE
);
查看数据库中的表使用SHOW TABLES;,查看表结构则用DESCRIBE 表名;,修改表结构可通过ALTER TABLE命令,如添加字段ALTER TABLE users ADD age INT;,删除字段ALTER TABLE users DROP COLUMN age;,删除表使用DROP TABLE 表名;。

数据增删改查(CRUD)操作
数据的增删改查是MySQL的核心功能,插入数据使用INSERT INTO语句,
INSERT INTO users (username, email) VALUES ('Alice', 'alice@example.com');
批量插入可使用多组VALUES值,用逗号分隔,查询数据通过SELECT语句,如SELECT * FROM users;查询所有字段,或SELECT username, email FROM users;查询指定字段,条件查询需搭配WHERE子句,例如SELECT * FROM users WHERE age > 18;。
更新数据使用UPDATE语句,语法为UPDATE 表名 SET 字段名=新值 WHERE 条件;,例如UPDATE users SET email='new_email@example.com' WHERE username='Alice';,删除数据则通过DELETE FROM 表名 WHERE 条件;,如DELETE FROM users WHERE username='Alice';,需注意,DELETE操作不可逆,建议先备份数据。
用户权限与安全设置
MySQL的安全性依赖于合理的用户权限管理,创建用户使用CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';,例如CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'secure_password';,授予权限通过GRANT语句,如GRANT SELECT, INSERT ON example_db.* TO 'app_user'@'localhost';,该用户仅拥有对example_db数据库的查询和插入权限,刷新权限使配置生效,需执行FLUSH PRIVILEGES;,撤销权限使用REVOKE 权限 ON 数据库.表 FROM '用户名'@'主机';,删除用户则执行DROP USER '用户名'@'主机';。

数据备份与恢复
数据备份是防止数据丢失的重要手段,在Linux中,使用mysqldump工具可轻松备份数据库,备份数据库的命令为mysqldump -u 用户名 -p 数据库名 > 备份文件.sql,例如mysqldump -u root -p example_db > backup.sql,备份所有数据库则添加--all-databases参数,恢复数据库时,需先创建空数据库,再通过mysql -u 用户名 -p 数据库名 < 备份文件.sql导入数据,如mysql -u root -p example_db < backup.sql,对于大型数据库,可使用--single-transaction参数避免锁表,确保数据一致性。
实用技巧与注意事项
在Linux环境下使用MySQL时,需注意命令的大小写敏感性,Linux系统默认区分大小写,因此数据库名、表名及SQL关键字的大小写需与配置一致,建议使用小写命名避免混淆,定期查看MySQL错误日志(通常位于/var/log/mysql/error.log)有助于排查问题,对于复杂查询,可使用EXPLAIN分析执行计划,如EXPLAIN SELECT * FROM users WHERE id=1;,优化查询性能,保持MySQL版本更新,及时修复安全漏洞,确保数据库稳定运行。



















