1. 程式人生 > 實用技巧 >linux系統myaql的配置檔案優先順序和簡單的sql語句

linux系統myaql的配置檔案優先順序和簡單的sql語句

一、資料庫配置檔案

1.資料庫配置方式

1)預編譯

cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.20 \
-DMYSQL_DATADIR=/application/mysql-5.7.20/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.7.20/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 

2)配置檔案

vim /etc/my.cnf
basedir=
datadir=
socket=
server_id=
log_err=
log_bin=

3)命令列

--skip-grant-tables 
--skip-networking
--datadir=/application/mysql/data
--basedir=/application/mysql
--defaults-file=/etc/my.cnf
--pid-file=/application/mysql/data/db01.pid
--socket=/application/mysql/data/mysql.sock
--user=mysql
--port=3306
--log-error=/application/mysql/data/db01.err

2.資料庫配置檔案

1)配置檔案

/etc/my.cnf
/etc/mysql/my.cnf
$basedir/my.cnf
~/.my.cnf

#defaults-extra-file (類似include)

2)配置檔案讀取順序

1./etc/my.cnf           4
2./etc/mysql/my.cnf     3
3.$basedir/my.cnf       2
4.~/.my.cnf             1

3)配置檔案優先順序

1.~/my.cnf
2.$basedir/my.cnf
3./etc/mysql/my.cnf
4./etc/my.cnf

4)配置檔案生效順序測試

#配置~/.my.cnf
[root@db03 ~]# vim ~/.my.cnf
[mysqld]
server_id=1

#配置$basedir/my.cnf
[root@db03 ~]# vim /service/mysql/my.cnf 
[mysqld]
server_id=2

#配置/etc/mysql/my.cnf
[root@db03 ~]# vim /etc/mysql/my.cnf
[mysqld]
server_id=3

#配置/etc/my.cnf
[root@db03 ~]# vim /etc/my.cnf
server_id=4

#重啟資料庫
[root@db03 ~]# /etc/init.d/mysqld start

#檢視id測試
[root@db03 ~]# mysql -uroot -p123 -e 'show variables like "server_id"'
Warning: Using a password on the command line interface can be insecure.
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 4     |
+---------------+-------+

3.配置生效順序

#1.預編譯製定socket檔案
cmake . -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.46/tmp/mysql.sock

#2.配置檔案制定
[root@db02 ~]# vim /etc/my.cnf
[mysqld]
socket=/tmp/mysql.sock

#3.配置a.txt
[root@db02 ~]# vim a.txt
[mysqld]
socket=/opt/mysql.sock

#4.命令列
--socket=/tmp/commond.sock

#5.分別使用以下命令測試生效的配置
[root@db02 ~]# mysqld_safe --defaults-file=a.txt --socket=/tmp/commond.sock &
[root@db02 ~]# mysqld_safe --defaults-file=a.txt
[root@db02 ~]# mysqld_safe

#6.檢視socket檔案位置判斷優先順序

4.mysql配置優先順序總結

#優先順序從高到低
命令列 > --defaults-file > ~/my.cnf > $basedir/my.cnf > /etc/mysql/my.cnf > /etc/my.cnf > defaults-extra-file > 初始化 > 預編譯

5.配置檔案的作用

1)作用

1.影響客戶端的連線
2.影響服務端啟動

2)影響客戶端的連線

[root@db02 ~]# vim /etc/my.cnf
[mysqld]
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
user=root
password=123

#不需要重啟,直接mysql就可以連線資料庫

3)影響服務端啟動

[root@db02 ~]# vim /etc/my.cnf
[mysqld]
socket=/tmp/mysql.sock
server_id=1

#配置server_id,必須要重啟,檢視才生效

4)總結

1.客戶端也受配置檔案影響			[mysql]     [client]
2.客戶端配置以後可以不重啟
3.服務端配置以後必須重啟			[mysqld]	[server]
4.企業一般配置

[root@db02 ~]# vim /etc/my.cnf
[mysqld]
socket=/tmp/mysql.sock
server_id=1
[mysql]
socket=/tmp/mysql.sock

二、MySQL的命令

1.mysql連線後快捷鍵

\?			#幫助
\c			#終止當前命令
	\r			#重連資料庫
\d			#修改命令結束符
	\e			#寫入檔案,同時執行多條命令
\G			#垂直顯示結果
\q			#退出資料庫
	\g			#命令結束
	\h			#幫助
	\t			#取消寫入檔案
\T			#將執行過程與結果寫入一個檔案
	\p			#列印一次命令
	\R			#修改命令提示符
source  (\.) #讀取sql檔案
status  (\s) #檢視資料庫狀態
system  (\!) #在資料庫裡執行命令列命令
use     (\u) #切換資料庫

prompt    (\R) Change your mysql prompt.
nopager   (\n) Disable pager, print to stdout.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.

2.help命令

mysql> help
mysql> help contents
mysql> help select
mysql> help create
mysql> help create user
mysql> help status
mysql> help show

3.客戶端mysqladmin命令

1)修改密碼

mysqladmin -uroot -p123 password 123456

2)關閉資料庫

#一般多例項使用
mysqladmin -uroot -p123 -S /tmp/mysql.sock shutdown

3)建庫

[root@db03 ~]# mysqladmin -uroot -p create zengdao
Enter password:

4)刪庫

[root@db03 ~]# mysqladmin -uroot -p drop zengdao
Enter password: 
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.

Do you really want to drop the 'zengdao' database [y/N] y
Database "zengdao" dropped

5)檢視資料庫配置

[root@db03 ~]# mysqladmin -uroot -p variables | grep server_id
Enter password: 
| server_id        | 4  |
| server_id_bits   | 32 |

6)確認資料庫是否啟動

[root@db03 ~]# mysqladmin -uroot -p123 ping
Warning: Using a password on the command line interface can be insecure.
mysqld is alive

7)檢視資料庫資訊

[root@db03 ~]# mysqladmin -uroot -p123 status
Warning: Using a password on the command line interface can be insecure.
Uptime: 143  Threads: 1  Questions: 22  Slow queries: 0  Opens: 70  Flush tables: 1  Open tables: 63  Queries per second avg: 0.153

8)重新整理授權表

#相當於在資料庫中執行 flush privileges
[root@db03 ~]# mysqladmin -uroot -p123 reload

9)重新整理binlog

#如果有主從,不要重新整理binlog,如果沒有主從,可以先重新整理binlog再做主從
[root@db03 ~]# mysqladmin -uroot -p123 flush-log

SQL語句

一、sql語句的語義種類

DDL: 資料定義語言  Data Definition Language
DCL: 資料控制語言  Data Control Language
DML: 資料操作語言  Data Manipulate Language
DQL: 資料查詢語言  Data Query Language

二、DDL: 資料定義語言 (create、drop)

1.create針對庫的操作

1)語法

mysql> help create database
Name: 'CREATE DATABASE'
Description:
Syntax:
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ...

create_specification:
    [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name

2)建立庫

mysql> create database db1;
Query OK, 1 row affected (0.00 sec)

mysql> create SCHEMA db2;
Query OK, 1 row affected (0.00 sec)

3)建庫時提示已存在

mysql> create database db1;
ERROR 1007 (HY000): Can't create database 'db1'; database exists

mysql> create database IF NOT EXISTS db1;
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> create database IF NOT EXISTS db1;
Query OK, 1 row affected, 1 warning (0.00 sec)

4)檢視建庫語句

mysql> show create database db1;
+----------+----------------------------------------------------------------+
| Database | Create Database                                                |
+----------+----------------------------------------------------------------+
| db1      | CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+----------------------------------------------------------------+
1 row in set (0.00 sec)

5)建立資料庫並指定字符集

mysql> create database db3 charset utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

mysql> show create database db3;
+----------+--------------------------------------------------------------+
| Database | Create Database                                              |
+----------+--------------------------------------------------------------+
| db3      | CREATE DATABASE `db3` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+--------------------------------------------------------------+
1 row in set (0.00 sec)

#不指定校驗規則預設就是 utf8_general_ci
mysql> create database db4 charset utf8;
Query OK, 1 row affected (0.00 sec)

6)刪庫

mysql> drop database db1;
Query OK, 0 rows affected (0.00 sec)

7)修改庫

mysql> show create database db2;
+----------+----------------------------------------------------------------+
| Database | Create Database                                                |
+----------+----------------------------------------------------------------+
| db2      | CREATE DATABASE `db2` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> alter database db2 charset utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

mysql> show create database db2;
+----------+--------------------------------------------------------------+
| Database | Create Database                                              |
+----------+--------------------------------------------------------------+
| db2      | CREATE DATABASE `db2` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+--------------------------------------------------------------+
1 row in set (0.00 sec)

2.create針對表的操作

1)語法

mysql> help create table;
Name: 'CREATE TABLE'
Description:
Syntax:
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    (create_definition,...)
    [table_options]
    [partition_options]

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    [(create_definition,...)]
    [table_options]
    [partition_options]
    [IGNORE | REPLACE]
    [AS] query_expression

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    { LIKE old_tbl_name | (LIKE old_tbl_name) }

2)建表

#1.進入一個庫
mysql> use db2
Database changed
#2.檢視當前所在庫
mysql> select database();
+------------+
| database() |
+------------+
| db2        |
+------------+
1 row in set (0.00 sec)

#3.建表,建表最少有一列
mysql> create table tb1;
ERROR 1113 (42000): A table must have at least 1 column

mysql> create table tb1(id int);
Query OK, 0 rows affected (0.04 sec)

#4.查看錶
mysql> show tables;
+---------------+
| Tables_in_db2 |
+---------------+
| tb1           |
+---------------+
1 row in set (0.00 sec)

mysql> desc tb1;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id    | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
1 row in set (0.00 sec)

3)資料型別

int				整數  -2^31 - 2^31-1    (-2147483648 - 2147483647)
tinyint			最小整數   -128 - 127	#年齡  0 - 255
varchar			字元型別(變長)	#身份證
char			字元型別(定長)
enum			列舉型別	#給它固定選項,只能選則選擇項中的值    性別
datetime		時間型別	年月日時分秒

4)資料型別測試

#int型別
mysql> create table tb1(id int);
Query OK, 0 rows affected (0.04 sec)

mysql> insert tb1 values(1);
Query OK, 1 row affected (0.01 sec)

mysql> insert tb1 values(11111111111);
ERROR 1264 (22003): Out of range value for column 'id' at row 1

mysql> insert tb1 values(2147483647);
Query OK, 1 row affected (0.00 sec)

mysql> insert tb1 values(2147483648);
ERROR 1264 (22003): Out of range value for column 'id' at row 1

mysql> insert tb1 values(-2147483648);
Query OK, 1 row affected (0.00 sec)

mysql> insert tb1 values(-2147483649);
ERROR 1264 (22003): Out of range value for column 'id' at row 1
#enum型別
mysql> create table qiudao(id int,sex enum('nan','nv'));
Query OK, 0 rows affected (0.02 sec)

mysql> insert into qiudao values(1,'nan');
Query OK, 1 row affected (0.00 sec)

mysql> insert into qiudao values(1,'qiudao');
ERROR 1265 (01000): Data truncated for column 'sex' at row 1

5)建表測試

表名:student
id
name
age
gender
cometime

#1.建表
mysql> create table student(
    -> id int,
    -> name varchar(12),
    -> age tinyint,
    -> gender enum('M','F'),
    -> cometime datetime);
Query OK, 0 rows affected (0.01 sec)

#2.插入資料
mysql> insert into student values(1,'邱導',-18,'M',now());
Query OK, 1 row affected (0.00 sec)

mysql> insert into student values(1,'邱導',-18,'M',now());
Query OK, 1 row affected (0.01 sec)

mysql> insert into student values(1,'邱導',-18,'M',now());
Query OK, 1 row affected (0.00 sec)

mysql> insert into student values(1,'邱導',-18,'M',now());
Query OK, 1 row affected (0.01 sec)

#3.檢視資料
mysql> select * from student;
+------+--------+------+--------+---------------------+
| id   | name   | age  | gender | cometime            |
+------+--------+------+--------+---------------------+
|    1 | 邱導   |  -18 | M      | 2020-07-14 19:34:04 |
|    1 | 邱導   |  -18 | M      | 2020-07-14 19:34:08 |
|    1 | 邱導   |  -18 | M      | 2020-07-14 19:34:09 |
|    1 | 邱導   |  -18 | M      | 2020-07-14 19:34:10 |
+------+--------+------+--------+---------------------+
4 rows in set (0.00 sec)

6)建表資料屬性

not null: 			#非空
primary key: 		#主鍵(唯一且非空的)
auto_increment: 	#自增(此列必須是:primary key或者unique key)
unique key: 		#唯一鍵,單獨的唯一的
default: 			#預設值
unsigned: 			#非負數
comment: 			#註釋

7)加上屬性建表

#1.建表語句
create table students(
id int primary key auto_increment comment "學生id",
name varchar(12) not null comment "學生姓名",
age tinyint unsigned not null comment "學生年齡",
gender enum('M','F') default 'M' comment "學生性別",
cometime datetime default now() comment "入學時間");

#2.檢視建表語句
mysql> show create table students;
| students | CREATE TABLE `students` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '學生id',
  `name` varchar(12) NOT NULL COMMENT '學生姓名',
  `age` tinyint(3) unsigned NOT NULL COMMENT '學生年齡',
  `gender` enum('M','F') DEFAULT 'M' COMMENT '學生性別',
  `cometime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '入學時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8                   |
1 row in set (0.00 sec)

#3.插入資料
mysql> insert into students values(1,'qiudao',18,'M',now());
Query OK, 1 row affected (0.00 sec)
#因為主鍵相同無法插入
mysql> insert into students values(1,'qiudao',18,'M',now());
ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'
#應該
mysql> insert into students values('2','qiudao',18,'M',now());
Query OK, 1 row affected (0.00 sec)
#主鍵已經設定自增沒必要自己插入

#正規插入資料的寫法
mysql> insert students(name,age) values('lhd',18);
Query OK, 1 row affected (0.00 sec)

mysql> insert students(name,age) values('lhd',12);
Query OK, 1 row affected (0.01 sec)

mysql> select * from students;
+----+--------+-----+--------+---------------------+
| id | name   | age | gender | cometime            |
+----+--------+-----+--------+---------------------+
|  1 | qiudao |  18 | M      | 2020-07-14 19:51:44 |
|  2 | qiudao |  18 | M      | 2020-07-14 19:52:19 |
|  3 | lhd    |  18 | M      | 2020-07-14 19:53:50 |
|  4 | lhd    |  12 | M      | 2020-07-14 19:53:58 |
+----+--------+-----+--------+---------------------+
4 rows in set (0.00 sec)

3.刪除表

drop table student;

4.修改表

#1.新建表
mysql> create table linux(daijiadong tinyint);
Query OK, 0 rows affected (0.04 sec

#2.修改表名
mysql> alter table linux rename linux9;
Query OK, 0 rows affected (0.01 sec)

#3.插入新欄位
mysql> alter table linux9 add rengyufeng int;
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+------------+------------+------+-----+---------+-------+
| Field      | Type       | Null | Key | Default | Extra |
+------------+------------+------+-----+---------+-------+
| daijiadong | tinyint(4) | YES  |     | NULL    |       |
| rengyufeng | int(11)    | YES  |     | NULL    |       |
+------------+------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

#4.插入多個新欄位
mysql> alter table linux9 add liukong int,add wangzhangxing int;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+------------+------+-----+---------+-------+
| Field         | Type       | Null | Key | Default | Extra |
+---------------+------------+------+-----+---------+-------+
| daijiadong    | tinyint(4) | YES  |     | NULL    |       |
| rengyufeng    | int(11)    | YES  |     | NULL    |       |
| liukong       | int(11)    | YES  |     | NULL    |       |
| wangzhangxing | int(11)    | YES  |     | NULL    |       |
+---------------+------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

#5.插入欄位到最前面
mysql> alter table linux9 add kangpeiwen varchar(100) first;
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| kangpeiwen    | varchar(100) | YES  |     | NULL    |       |
| daijiadong    | tinyint(4)   | YES  |     | NULL    |       |
| rengyufeng    | int(11)      | YES  |     | NULL    |       |
| liukong       | int(11)      | YES  |     | NULL    |       |
| wangzhangxing | int(11)      | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

#6.插入欄位到指定欄位後面
mysql> alter table linux9 add chenjianqing varchar(100) after daijiadong;
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| kangpeiwen    | varchar(100) | YES  |     | NULL    |       |
| daijiadong    | tinyint(4)   | YES  |     | NULL    |       |
| chenjianqing  | varchar(100) | YES  |     | NULL    |       |
| rengyufeng    | int(11)      | YES  |     | NULL    |       |
| liukong       | int(11)      | YES  |     | NULL    |       |
| wangzhangxing | int(11)      | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
6 rows in set (0.00 sec)

#7.刪除指定列
mysql> alter table linux9 drop daijiadong;
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| kangpeiwen    | varchar(100) | YES  |     | NULL    |       |
| chenjianqing  | varchar(100) | YES  |     | NULL    |       |
| rengyufeng    | int(11)      | YES  |     | NULL    |       |
| liukong       | int(11)      | YES  |     | NULL    |       |
| wangzhangxing | int(11)      | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

#8.修改欄位
mysql> alter table linux9 change rengyufeng congtianqi int;
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| kangpeiwen    | varchar(100) | YES  |     | NULL    |       |
| chenjianqing  | varchar(100) | YES  |     | NULL    |       |
| congtianqi    | int(11)      | YES  |     | NULL    |       |
| liukong       | int(11)      | YES  |     | NULL    |       |
| wangzhangxing | int(11)      | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

#9.修改欄位屬性
mysql> alter table linux9 modify congtianqi tinyint;
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc linux9;
+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| kangpeiwen    | varchar(100) | YES  |     | NULL    |       |
| chenjianqing  | varchar(100) | YES  |     | NULL    |       |
| congtianqi    | tinyint(4)   | YES  |     | NULL    |       |
| liukong       | int(11)      | YES  |     | NULL    |       |
| wangzhangxing | int(11)      | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

三、DCL: 資料控制語言 (grant、revoke)

1.grant授權

#1.授權語句
grant all on *.* to root@'172.16.1.%' identified by '123';

#2.檢視使用者許可權
mysql> show grants for root@'localhost';
| Grants for root@localhost |
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION   |

#3.擴充套件引數
max_queries_per_hour:一個使用者每小時可發出的查詢數量
mysql> grant all on *.* to root@'172.16.1.%' identified by '123' with max_queries_per_hour 2;
Query OK, 0 rows affected (0.00 sec)

max_updates_per_hour:一個使用者每小時可發出的更新數量
mysql> grant all on *.* to root@'172.16.1.%' identified by '123' with max_updates_per_hour 2;
Query OK, 0 rows affected (0.00 sec)

max_connetions_per_hour:一個使用者每小時可連線到伺服器的次數
mysql> grant all on *.* to lhd@'172.16.1.%' identified by '123' with max_connections_per_hour 2;
Query OK, 0 rows affected (0.00 sec)

max_user_connetions:允許同時連線數量
mysql> grant all on *.* to lhd@'172.16.1.%' identified by '123' with max_user_connections 1;
Query OK, 0 rows affected (0.00 sec)

2.revoke回收許可權

mysql> revoke drop on *.* from lhd@'172.16.1.%';
Query OK, 0 rows affected (0.00 sec)

mysql> show grants for lhd@'172.16.1.%';
| Grants for [email protected].%                                                                           
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE ON *.* TO 'lhd'@'172.16.1.%' IDENTIFIED BY PASSWORD '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257' WITH MAX_CONNECTIONS_PER_HOUR 2 MAX_USER_CONNECTIONS 1

#所有許可權
SELECT, INSERT, UPDATE, DELETE, CREATE, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, DROP, GRANT

3.授權超級管理員

grant all on *.* to root@'172.16.1.%' identified by '123' with grant option;