mysql数据库命令大全

mysql数据库命令大全

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数据库操作的大部分方面,从数据库和表的管理到数据的增删改查,再到用户管理和性能优化。熟练掌握这些命令将有助于提高数据库管理和操作的效率。