### MySQL基本指令集详解
#### 一、MySQL基础操作
**1. 创建数据库**
```sql
CREATE DATABASE 数据库名称;
```
此命令用于创建一个新的数据库。`数据库名称`需替换为您想要创建的数据库的具体名称。
**2. 显示MySQL中的数据库**
```sql
SHOW DATABASES;
```
该命令用来展示MySQL服务器上所有可用的数据库列表。
**3. 进入指定数据库**
```sql
USE 数据库名称;
```
使用`USE`命令切换到指定的数据库。您需要将`数据库名称`替换为实际要使用的数据库名。
**4. 显示数据库中的表**
```sql
SHOW TABLES;
```
执行此命令可以查看当前选中的数据库内所有的表名。
**5. 显示表结构**
```sql
DESC 表名称;
```
通过`DESC`命令可以查看某个表的具体结构,包括字段名、类型等信息。
**6. 批量执行SQL脚本**
```sql
\. d:\test.sql
```
`.`符号后面紧跟文件路径,可以执行位于指定路径下的SQL脚本文件。
**7. 备份数据库**
```sql
mysqldump –u root –p drp>d:\drp.sql
```
使用`mysqldump`工具进行数据库备份。其中`root`代表用户名,`drp`为要备份的数据库名,`d:\drp.sql`是备份文件的保存路径。
**8. 恢复数据**
```sql
SOURCE d:\drp.sql
```
使用`SOURCE`命令来恢复之前备份的数据,文件路径应替换为实际备份文件的位置。
#### 二、MySQL服务管理
**1. 启动MySQL服务**
```shell
net start mysql
```
通过Windows服务管理器启动MySQL服务。
**2. 停止MySQL服务**
```shell
net stop mysql
```
同样地,此命令用于停止MySQL服务。
#### 三、MySQL登录操作
**1. 登录MySQL**
```shell
mysql -u 用户名 -p 用户密码
```
此命令用于登录MySQL服务,其中`用户名`和`用户密码`分别代表登录MySQL所需的用户名和密码。
**2. 连接到远程主机**
```shell
mysql -u 用户名 -p -h 机器IP
```
当需要连接到远程主机上的MySQL服务时,可在命令中添加`-h`参数后跟远程主机的IP地址。
#### 四、MySQL用户管理
**1. 增加新用户**
```sql
GRANT 权限 ON 数据库.* TO 用户名@登录主机 IDENTIFIED BY "密码";
```
此命令用于创建新用户并赋予相应的权限。
- `权限`: 可以为`SELECT`, `INSERT`, `UPDATE`, `DELETE`等,表示用户可以在哪些数据库上执行什么操作。
- `数据库.*`: 表示在所有数据库的所有表上。
- `用户名@登录主机`: 用户名以及允许登录的主机(例如`user1@localhost`或`user1@%`)。
- `IDENTIFIED BY "密码"`: 设置用户的登录密码。
**2. 删除用户密码**
```sql
GRANT 权限 ON 数据库.* TO 用户名@登录主机 IDENTIFIED BY "";
```
若想删除用户的密码,可将`IDENTIFIED BY ""`设置为空字符串。
#### 五、MySQL数据库操作
**1. 显示数据库列表**
```sql
SHOW DATABASES;
```
展示所有存在的数据库。
**2. 显示库中的数据表**
```sql
USE mysql;
SHOW TABLES;
```
先切换到`mysql`数据库,然后展示该数据库内的所有表。
**3. 显示数据表的结构**
```sql
DESCRIBE 表名;
```
展示特定表的结构详情。
**4. 创建/删除数据库**
```sql
CREATE DATABASE 库名;
DROP DATABASE 库名;
```
用于创建或删除数据库。
**5. 创建表**
```sql
CREATE TABLE 表名(字段列表);
```
创建新表时需要定义表结构,包括字段名、字段类型等属性。
**6. 定义字段**
```sql
col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT] [PRIMARY KEY] [reference_definition]
```
- `col_name`: 字段名。
- `type`: 数据类型,如`INT`, `VARCHAR`, `DATE`等。
- `[NOT NULL | NULL]`: 是否允许为空。
- `[DEFAULT default_value]`: 默认值。
- `[AUTO_INCREMENT]`: 自增字段。
- `[PRIMARY KEY]`: 主键。
- `[reference_definition]`: 外键约束。
以上介绍了MySQL中常用的基本指令集,包括数据库的操作、用户管理、表的创建与维护等核心功能。对于初学者而言,熟练掌握这些基本操作是非常重要的。希望本文能帮助大家更好地理解和运用MySQL。