MySQL命令大全

栏目: mysql 发布时间:2024-11-22

MySQL命令大全

MySQL是一个广泛使用的关系型数据库管理系统,它提供了一套丰富的命令用于数据库的管理和操作。以下是一份MySQL命令的概览,涵盖了从数据库和表的创建到数据查询、修改和删除的各种常用命令。

一、数据库管理命令

  1. 创建数据库

    CREATE DATABASE database_name;
    
  2. 删除数据库

    DROP DATABASE database_name;
    
  3. 选择数据库

    USE database_name;
    
  4. 查看所有数据库

    SHOW DATABASES;
    
  5. 查看当前数据库

    SELECT DATABASE();
    

二、表管理命令

  1. 创建表

    CREATE TABLE table_name (
        column1 datatype constraints,
        column2 datatype constraints,
        ...
    );
    
  2. 删除表

    DROP TABLE table_name;
    
  3. 修改表结构

    • 添加列
      ALTER TABLE table_name ADD column_name datatype constraints;
      
    • 删除列
      ALTER TABLE table_name DROP COLUMN column_name;
      
    • 修改列
      ALTER TABLE table_name MODIFY COLUMN column_name new_datatype new_constraints;
      
    • 重命名列
      ALTER TABLE table_name CHANGE old_column_name new_column_name new_datatype new_constraints;
      
    • 重命名表
      RENAME TABLE old_table_name TO new_table_name;
      
  4. 查看表结构

    DESCRIBE table_name;
    

    SHOW COLUMNS FROM table_name;
    
  5. 查看所有表

    SHOW TABLES;
    

三、数据操作命令

  1. 插入数据

    INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
    
  2. 查询数据

    SELECT column1, column2, ... FROM table_name WHERE condition;
    
  3. 更新数据

    UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
    
  4. 删除数据

    DELETE FROM table_name WHERE condition;
    

四、数据查询高级命令

  1. 排序

    SELECT column1, column2, ... FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;
    
  2. 限制结果集

    SELECT column1, column2, ... FROM table_name LIMIT number [OFFSET offset];
    
  3. 分组

    SELECT column1, COUNT(*) FROM table_name GROUP BY column1;
    
  4. 聚合函数

    • COUNT()
    • SUM()
    • AVG()
    • MAX()
    • MIN()
  5. 连接查询

    • 内连接
      SELECT a.column1, b.column2 FROM table1 a INNER JOIN table2 b ON a.common_column = b.common_column;
      
    • 左连接
      SELECT a.column1, b.column2 FROM table1 a LEFT JOIN table2 b ON a.common_column = b.common_column;
      
    • 右连接
      SELECT a.column1, b.column2 FROM table1 a RIGHT JOIN table2 b ON a.common_column = b.common_column;
      
  6. 子查询

    SELECT column1 FROM table_name WHERE column2 = (SELECT column2 FROM another_table WHERE condition);
    

五、索引和视图

  1. 创建索引

    CREATE INDEX index_name ON table_name (column1, column2, ...);
    
  2. 删除索引

    DROP INDEX index_name ON table_name;
    
  3. 创建视图

    CREATE VIEW view_name AS SELECT column1, column2, ... FROM table_name WHERE condition;
    
  4. 删除视图

    DROP VIEW view_name;
    

六、用户和权限管理

  1. 创建用户

    CREATE USER 'username'@'host' IDENTIFIED BY 'password';
    
  2. 删除用户

    DROP USER 'username'@'host';
    
  3. 授予权限

    GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'host';
    
  4. 撤销权限

    REVOKE ALL PRIVILEGES ON database_name.* FROM 'username'@'host';
    
  5. 刷新权限

    FLUSH PRIVILEGES;
    
  6. 更改密码

    SET PASSWORD FOR 'username'@'host' = PASSWORD('new_password');
    

    或(MySQL 5.7.6及以上)

    ALTER USER 'username'@'host' IDENTIFIED BY 'new_password';
    

七、备份和恢复

  1. 导出数据库

    mysqldump -u username -p database_name > backup_file.sql
    
  2. 导入数据库

    mysql -u username -p database_name < backup_file.sql
    

这份MySQL命令大全提供了数据库管理和操作的基本框架,但MySQL的功能远不止于此。随着对MySQL的深入了解,你将能够发现更多高级功能和优化技巧。

本文地址:https://www.tides.cn/p_mysql-command