MySQL是大型架构的核心,也是大厂的必备技能,下面我就全面来详解MySQL核心命令@mikechen

数据库相关命令

创建数据库:

sqlCREATE DATABASE testdb;

选择数据库:

sqlUSE testdb;

删除数据库:

sqlDROP DATABASE testdb;

显示数据库列表:

sqlSHOW DATABASES;

表相关命令

创建表:

sqlCREATE TABLE users (   id INT PRIMARY KEY AUTO_INCREMENT,   name VARCHAR(50),   age INT );

显示表结构:

sqlDESC users;

修改表结构(添加列):

sqlALTER TABLE users ADD COLUMN email VARCHAR(100);

修改表字段属性:

sqlALTER TABLE users MODIFY COLUMN age SMALLINT;

删除表字段:

sqlALTER TABLE users DROP COLUMN email;

删除表:

sqlDROP TABLE users;

数据操作相关

插入数据:

sqlINSERT INTO users (name, age) VALUES ('Alice', 25);

删除数据:

sqlDELETE FROM users WHERE name='Alice';

修改数据:

sqlUPDATE users SET age=26 WHERE name='Alice';

查询数据:

sqlSELECT * FROM users WHERE age > 20;

索引管理

创建索引:

sqlCREATE INDEX idx_name ON users(name);

查看表索引:

sqlSHOW INDEX FROM users;

用户与权限管理

创建用户:

sqlCREATE USER 'user1'@'localhost' IDENTIFIED BY 'password123';

授权用户:

sqlGRANT SELECT, INSERT ON testdb.* TO 'user1'@'localhost';

查看用户权限

sqlSHOW GRANTS FOR 'user1'@'localhost';

连接与账户管理:

连接本机MySQL:(命令行执行,不是SQL语句)

textmysql -uroot -p

连接远程MySQL:

textmysql -h 192.168.0.100 -u user1 -p

修改root密码:(命令行执行)

textmysqladmin -u root password 'newpassword';

其他运维命令

查看MySQL版本:

sqlSELECT @@version;

查看当前连接线程:

sqlSHOW PROCESSLIST \\G;

查看MySQL服务器参数:

sqlSHOW VARIABLES \\G;

查看表的创建语句:

sqlSHOW CREATE TABLE users \\G;

查看主从复制状态:

sqlSHOW MASTER STATUS; SHOW SLAVE STATUS;

清理二进制日志:

sqlPURGE BINARY LOGS TO 'mysql-bin.000010';

查看警告信息:

sqlSHOW WARNINGS;

查看所有binlog日志文件:

sqlSHOW MASTER LOGS;

查询当前连接端口:

sqlSHOW VARIABLES LIKE 'port';

查看数据目录:

sqlSHOW VARIABLES LIKE 'datadir';

备份恢复相关

备份数据库:(命令行执行)

textmysqldump -u root -p testdb > backup.sql

导入数据库:(命令行执行)

textmysql -u root -p testdb < backup.sql

事务相关

开启事务:

sqlSTART TRANSACTION;

提交事务:

sqlCOMMIT;

回滚事务:

sqlROLLBACK;

实用查询命令

查看查询执行计划:

sqlEXPLAIN SELECT * FROM users WHERE age > 20;
评论交流
    说说你的看法