
无论是初学者还是经验丰富的数据库管理员,熟练掌握MySQL命令都是进行数据库操作、管理和优化的基础
本文将详细介绍MySQL中的各类命令,从基础操作到进阶功能,涵盖数据库操作、表操作、数据操作、用户权限管理、实用工具、索引与优化、事务处理等多个方面
一、基础操作与数据库命令 MySQL的所有命令默认以分号(;)结尾,这是SQL语句的标准结束符
在执行命令时,确保在命令末尾添加分号,否则MySQL会认为命令未结束,继续等待输入
1.启动和停止MySQL服务 -Windows系统:使用`net start mysql`命令启动MySQL服务,`net stop mysql`命令停止服务
-Linux系统:使用`service mysql start`或`/etc/init.d/mysql start`命令启动服务,`service mysql stop`或`/etc/init.d/mysql stop`命令停止服务
也可以使用`systemctl start mysql`和`systemctl stop mysql`(对于使用systemd的系统)
2.连接MySQL数据库 使用`mysql -u username -p`命令连接MySQL数据库,其中`username`是数据库用户名,系统会提示输入密码
如果需要连接到远程主机,可以添加`-h host_address`参数指定主机地址
3.查看MySQL状态 -查看运行状态:使用SHOW STATUS;命令查看MySQL的运行状态信息
-查看变量:使用`SHOW VARIABLES LIKE %xxx%;`命令查看指定的系统变量
-查看进程:使用`SHOW PROCESSLIST;`命令查看当前正在运行的所有客户端连接/工作线程
4.数据库操作 -创建数据库:使用`CREATE DATABASE database_name;`命令创建新数据库
可以指定编码格式和排序规则,如`CREATE DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;`
-删除数据库:使用`DROP DATABASE database_name;`命令删除数据库
-查看所有数据库:使用`SHOW DATABASES;`命令列出所有数据库的名称
-使用数据库:使用`USE database_name;`命令选择特定数据库进行操作
-查看数据库状态:使用SHOW STATUS;(注意,这与查看MySQL整体运行状态的命令相同,但在特定数据库上下文中执行时,结果会有所不同)
二、表操作 表是MySQL数据库的基本存储单元,用于存储数据
以下是表操作的相关命令: 1.创建表 使用`CREATE TABLE table_name(column1 datatype, column2 datatype,...);`命令创建新表
每个列后面跟着它的数据类型,可以添加多个列选项,如表主键、唯一约束、默认值、自增等
例如: sql CREATE TABLE users( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; 2.删除表 使用`DROP TABLE table_name;`命令删除表
3.查看表结构 使用`DESCRIBE table_name;`、`SHOW COLUMNS FROM table_name;`或`EXPLAIN table_name;`命令查看表的结构,包括列名、数据类型、是否允许为空、默认值等信息
4.修改表 -添加字段:使用`ALTER TABLE table_name ADD COLUMN column_name datatype;`命令添加新字段
-修改字段:使用`ALTER TABLE table_name MODIFY COLUMN column_name new_datatype;`命令修改字段的数据类型或其他属性
-删除字段:使用`ALTER TABLE table_name DROP COLUMN column_name;`命令删除字段
-重命名表:使用`RENAME TABLE old_table_name TO new_table_name;`命令重命名表
三、数据操作 数据操作是数据库管理的核心,包括插入、查询、更新和删除数据
1.插入数据 使用`INSERT INTO table_name(column1, column2,...) VALUES(value1, value2,...);`命令向表中插入新数据
例如: sql INSERT INTO users(username, email) VALUES(john_doe, john@example.com); 2.查询数据 使用`SELECT column1, column2, ... FROM table_name WHERE condition;`命令从表中检索数据
``表示选择所有列
例如: sql SELECT - FROM users WHERE username = john_doe; 还可以进行排序、分页、聚合等操作,如`ORDER BY`、`LIMIT`、`COUNT()`、`SUM()`等
3.更新数据 使用`UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;`命令修改表中的数据
例如: sql UPDATE users SET email = john_new@example.com WHERE username = john_doe; 4.删除数据 使用`DELETE FROM table_name WHERE condition;`命令从表中删除数据
例如: sql DELETE FROM users WHERE username = john_doe; 四、用户与权限管理 MySQL提供了丰富的用户与权限管理命令,以确保数据库的安全性
1.创建用户 使用`CREATE USER username@host IDENTIFIED BY password;`命令创建新用户
例如: sql CREATE USER new_user@localhost IDENTIFIED BY password123; 2.授予权限 使用`GRANT privilege_type ON database_name- . TO username@host;`命令授予用户权限
例如: sql GRANT SELECT, INSERT ON mydatabase. TO new_user@localhost; `ALL PRIVILEGES`表示授予所有权限,`.`表示对所有数据库和表授予权限
3.撤销权限 使用`REVOKE privilege_type ON database_name- . FROM username@host;`命令撤销用户权限
例如: sql REVOKE DELETE ON mydatabase- . FROM new_user@localhost; 4.修改密码 使用`ALTER USER username@host IDENTIFIED BY new_password;`命令修改用户密码
例如: sql ALTER USER new_user@localhost IDENTIFIED BY new_password123; 5.删除用户 使用`DROP USER username@host;`命令删除用户
例如: sql DROP USER new_user@localhost; 6.刷新权限 使用`FLUSH PRIVILEGES;`命令刷新权限表,使权限更改立即生效
五、实用工具与备份恢复
MySQL最左前缀原则6:优化索引策略
MySQL常用命令大全:掌握数据库管理的必备技能
MySQL快速获取首条记录技巧
单挑:Oracle数据迁移至MySQL全攻略
MySQL数据库自动更新机制揭秘
命令行备份文件:快速操作指南
揭秘:用友软件备份文件存放位置
MySQL最左前缀原则6:优化索引策略
MySQL快速获取首条记录技巧
单挑:Oracle数据迁移至MySQL全攻略
MySQL数据库自动更新机制揭秘
命令行备份文件:快速操作指南
Debian系统下MySQL版本详解
MySQL表设计:快速复制字段名技巧
MySQL错误代码1630解决方案速览
MySQL技巧:轻松拆分字段值
MySQL5.5 DOS命令实战:高效管理数据库的秘诀
MySQL中如何指定文件路径导入
MySQL登录执行:快速上手指南