# Mysql數據庫導入導出和授權
### 數據導出
#### 1.數據庫數據導出
```shell
# 不要進入mysql,然后輸入以下命令 導出某個庫中的數據
mysqldump -u root -p tlxy > ~/Desktop/code/tlxy.sql
```
導出一個庫中所有數據,會形成一個建表和添加語句組成的sql文件
之后可以用這個sql文件到別的庫,或著本機中創(chuàng)建或回復這些數據
#### 2.將數據庫中的表導出
```shell
# 不要進入mysql,然后輸入以下命令 導出某個庫中指定的表的數據
mysqldump -u root -p tlxy tts >? ~/Desktop/code/tlxy-tts.sql
```
### 數據導入
把導出的sql文件數據導入到mysql數據庫中
```shell
# 在新的數據庫中 導入備份的數據,導入導出的sql文件
mysql -u? root -p ops < ./tlxy.sql
# 把導出的表sql 導入數據庫
mysql -u? root -p ops < ./tlxy-tts.sql
```
### 權限管理
> mysql中的root用戶是數據庫中權限最高的用戶,千萬不要用在項目中。
>
> 可以給不同的用戶,或者項目,創(chuàng)建不同的mysql用戶,并適當的授權,完成數據庫的相關操作
>
> 這樣就一定程度上保證了數據庫的安全。
創(chuàng)建用戶的語法格式:
`grant 授權的操作 on 授權的庫.授權的表 to 賬戶@登錄地址 identified by ‘密碼’;`
示例:
```mysql
# 在mysql中 創(chuàng)建一個 zhangsan 用戶,授權可以對tlxy這個庫中的所有表 進行 添加和查詢 的權限
grant select,insert on tlxy.* to zhangsan@'%' identified by '123456';
# 用戶 lisi。密碼 123456 可以對tlxy庫中的所有表有 所有操作權限
grant all on tlxy.* to lisi@'%' identified by '123456';
# 刪除用戶
drop user 'lisi'@'%';
```
