
MySQL数据库命令是用于与MySQL数据库进行交互和操作的指令。以下是对MySQL数据库命令的详细归纳:
一、启动和停止MySQL服务
- 启动MySQL服务:通常在命令行或终端中使用如“net start mysql”的命令(Windows系统)。
- 停止MySQL服务:使用如“net stop mysql”的命令(Windows系统)。
二、登录与退出MySQL
- 登录MySQL:使用“mysql -u用户名 -p密码”的命令,回车后会提示输入密码(出于安全考虑,密码不会在命令行中显示)。例如,“mysql -uroot -p”然后输入密码。
- 退出MySQL:使用“exit”或“quit”命令。
三、数据库管理命令
- 查看所有数据库:使用“SHOW DATABASES;”命令。
- 创建数据库:使用“CREATE DATABASE 数据库名;”命令。例如,“CREATE DATABASE testdb;”。
- 使用数据库:使用“USE 数据库名;”命令。例如,“USE testdb;”。
- 查看当前使用的数据库:使用“SELECT DATABASE();”命令。
- 删除数据库:使用“DROP DATABASE 数据库名;”命令。例如,“DROP DATABASE testdb;”。
四、数据表管理命令
查看当前数据库的所有表:使用“SHOW TABLES;”命令。
创建表:使用“CREATE TABLE 表名 (列名 数据类型 [约束条件], ...) [OPTIONS];”命令。例如,“CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE);”。
查看表结构:使用“DESC 表名;”或“SHOW COLUMNS FROM 表名;”命令。
修改表结构:
- 增加列:使用“ALTER TABLE 表名 ADD 列名 数据类型 [位置];”命令。位置参数可选,如FIRST(在最前)或AFTER 列名(在指定列后)。
- 修改列:使用“ALTER TABLE 表名 MODIFY 列名 数据类型;”命令。
- 删除列:使用“ALTER TABLE 表名 DROP 列名;”命令。
- 重命名列:使用“ALTER TABLE 表名 CHANGE 原列名 新列名 数据类型;”命令。
删除表:使用“DROP TABLE 表名;”命令。例如,“DROP TABLE users;”。
清空表(保留结构):使用“TRUNCATE TABLE 表名;”命令。
五、数据操作命令
- 插入数据:使用“INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);”命令。例如,“INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');”。
- 查询数据:使用“SELECT 列名1, 列名2, ... FROM 表名 [WHERE 条件] [ORDER BY 列名 ASC|DESC] [LIMIT 偏移量, 行数];”命令。例如,“SELECT * FROM users WHERE email LIKE '%example.com' ORDER BY created_at DESC LIMIT 10;”。
- 更新数据:使用“UPDATE 表名 SET 列名1=值1, 列名2=值2 WHERE 条件;”命令。例如,“UPDATE users SET email='new_email@example.com' WHERE name='Alice';”。
- 删除数据:使用“DELETE FROM 表名 WHERE 条件;”命令。例如,“DELETE FROM users WHERE id=10;”。
六、索引管理命令
- 创建索引:使用“CREATE INDEX index_name ON table_name (column_list);”或“ALTER TABLE table_name ADD INDEX index_name (column1, column2);”命令。
- 查看索引:使用“SHOW INDEX FROM table_name [FROM db_name];”命令。
- 删除索引:使用“ALTER TABLE table_name DROP INDEX index_name;”命令。
七、用户管理命令
- 创建用户:使用“CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';”命令。例如,“CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'mypassword';”。
- 修改用户密码:使用“ALTER USER '用户名'@'主机' IDENTIFIED BY '新密码';”命令。
- 删除用户:使用“DROP USER '用户名'@'主机';”命令。
- 授予权限:使用“GRANT 权限列表 ON 数据库.表 TO '用户名'@'主机';”命令。例如,“GRANT SELECT, INSERT ON testdb.* TO 'testuser'@'localhost';”。
- 撤销权限:使用“REVOKE 权限列表 ON 数据库.表 FROM '用户名'@'主机';”命令。
- 刷新权限:使用“FLUSH PRIVILEGES;”命令,使权限更改立即生效。
八、其他常用命令
- 查看MySQL版本:使用“SELECT VERSION();”命令。
- 查看当前用户:使用“SELECT USER();”命令。
- 优化表:使用“OPTIMIZE TABLE 表名;”命令。
- 查看慢查询日志:使用“SHOW VARIABLES LIKE 'slow_query_log';”命令,并可通过“SET GLOBAL slow_query_log=1;”启用慢查询日志。
- 检查表:使用“CHECK TABLE 表名;”命令。
- 修复表:使用“REPAIR TABLE 表名;”命令。
这些命令涵盖了MySQL数据库操作的大部分方面,从数据库和表的管理到数据的增删改查,再到用户管理和性能优化。熟练掌握这些命令将有助于提高数据库管理和操作的效率。
