最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL用戶賬戶管理和權(quán)限管理深入講解

 更新時間:2018年12月04日 09:36:46   作者:mumengyun  
這篇文章主要給大家介紹了關(guān)于MySQL用戶賬戶管理和權(quán)限管理的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

MySQL 的權(quán)限表在數(shù)據(jù)庫啟動的時候就載入內(nèi)存,當(dāng)用戶通過身份認證后,就在內(nèi)存中進行相應(yīng)權(quán)限的存取,這樣,此用戶就可以在數(shù)據(jù)庫中做權(quán)限范圍內(nèi)的各種操作了。

下面話不多說了,來一起看看詳細的介紹吧

mysql 的權(quán)限體系大致分為5個層級:

全局層級

全局權(quán)限適用于一個給定服務(wù)器中的所有數(shù)據(jù)庫。這些權(quán)限存儲在mysql.user表中。GRANT ALL ON *.*和REVOKE ALL ON *.*只授予和撤銷全局權(quán)限。

數(shù)據(jù)庫層級

數(shù)據(jù)庫權(quán)限適用于一個給定數(shù)據(jù)庫中的所有目標。這些權(quán)限存儲在mysql.db和mysql.host表中。GRANT ALL ON db_name.*和REVOKE ALL ON db_name.*只授予和撤銷數(shù)據(jù)庫權(quán)限。

表層級

表權(quán)限適用于一個給定表中的所有列。這些權(quán)限存儲在mysql.talbes_priv表中。GRANT ALL ON db_name.tbl_name和REVOKE ALL ON db_name.tbl_name只授予和撤銷表權(quán)限。

列層級

列權(quán)限適用于一個給定表中的單一列。這些權(quán)限存儲在mysql.columns_priv表中。當(dāng)使用REVOKE時,您必須指定與被授權(quán)列相同的列。

子程序?qū)蛹?/strong>

CREATE ROUTINE, ALTER ROUTINE, EXECUTE和GRANT權(quán)限適用于已存儲的子程序。這些權(quán)限可以被授予為全局層級和數(shù)據(jù)庫層級。而且,除了CREATE ROUTINE外,這些權(quán)限可以被授予為子程序?qū)蛹?,并存儲在mysql.procs_priv表中。

這些權(quán)限信息存儲在下面的系統(tǒng)表中:

mysql.user
mysql.db
mysql.host
mysql.table_priv
mysql.column_priv

當(dāng)用戶連接進來,mysqld會通過上面的這些表對用戶權(quán)限進行驗證!

一、權(quán)限表的存取

在權(quán)限存取的兩個過程中,系統(tǒng)會用到 “mysql” 數(shù)據(jù)庫(安裝 MySQL 時被創(chuàng)建,數(shù)據(jù)庫名稱叫“mysql”) 中 user、host 和 db 這3個最重要的權(quán)限表。

在這 3 個表中,最重要的表示 user 表,其次是 db 表,host 表在大多數(shù)情況下并不使用。

user 中的列主要分為 4 個部分:用戶列、權(quán)限列、安全列和資源控制列。

通常用的最多的是用戶列和權(quán)限列,其中權(quán)限列又分為普通權(quán)限和管理權(quán)限。普通權(quán)限用于數(shù)據(jù)庫的操作,比如 select_priv、super_priv 等。

當(dāng)用戶進行連接時,權(quán)限表的存取過程有以下兩個過程:

先從 user 表中的 host、user 和 password 這 3 個字段中判斷連接的 IP、用戶名、和密碼是否存在于表中,如果存在,則通過身份驗證,否則拒絕連接。

如果通過身份驗證、則按照以下權(quán)限表的順序得到數(shù)據(jù)庫權(quán)限:user -> db -> tables_priv -> columns_priv。

在這幾個權(quán)限表中,權(quán)限范圍依次遞減,全局權(quán)限覆蓋局部權(quán)限。上面的第一階段好理解,下面以一個例子來詳細解釋一下第二階段。

為了方便測試,需要修改變量 sql_mode,不然會報錯,如下

MySQL [(none)]> grant select on *.* to xxx@localhost;
ERROR 1133 (42000): Can't find any matching row in the user table
MySQL [(none)]> SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';
Query OK, 0 rows affected, 2 warnings (0.07 sec)

MySQL [(none)]> grant select on *.* to xxx@localhost;
Query OK, 0 rows affected, 2 warnings (0.10 sec)
// sql_mode 默認值中有 NO_AUTO_CREATE_USER (防止GRANT自動創(chuàng)建新用戶,除非還指定了密碼)
SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';

1. 創(chuàng)建用戶

xxx@localhost,并賦予所有數(shù)據(jù)庫上的所有表的 select 權(quán)限

先查看user表顯示的權(quán)限狀態(tài)

MySQL [mysql]> select * from user where user="xxx" and host='localhost' \G;
*************************** 1. row ***************************
Host: localhost
User: xxx
Select_priv: Y
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
Process_priv: N
File_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Show_db_priv: N
Super_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Execute_priv: N
Repl_slave_priv: N
Repl_client_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Create_user_priv: N
Event_priv: N
Trigger_priv: N
Create_tablespace_priv: N
ssl_type: 
ssl_cipher: 
x509_issuer: 
x509_subject: 
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: 
password_expired: N
password_last_changed: 2018-12-03 17:34:49
password_lifetime: NULL
account_locked: N

再查看db表的權(quán)限狀態(tài)

MySQL [mysql]> select * from db where user="xxx" and host='localhost' \G;
Empty set (0.03 sec)

可以發(fā)現(xiàn)user表中Select_priv: Y,其他均為N

DB表中則無記錄

也就是說,對所有數(shù)據(jù)庫都具有相同的權(quán)限的用戶并不需要記錄到 db 表,而僅僅需要將 user 表中的 select_priv 改為 “Y” 即可。換句話說,user 表中的每個權(quán)限都代表了對所有數(shù)據(jù)庫都有權(quán)限。

2. 將 xxx@localhost 上的權(quán)限改為只對 db1 數(shù)據(jù)庫上所有表的 select 權(quán)限。

MySQL [mysql]> create database db1;
Query OK, 1 row affected (0.01 sec)

MySQL [mysql]> re^C
MySQL [mysql]> revoke select on *.* from xxx@localhost;
Query OK, 0 rows affected, 1 warning (0.06 sec)

MySQL [mysql]> grant select on db1.* to xxx@localhost;
Query OK, 0 rows affected, 1 warning (0.09 sec)

MySQL [mysql]> select * from user where user='xxx'\G;
*************************** 1. row ***************************
Host: localhost
User: xxx
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
MySQL [mysql]> select * from db where user='xxx'\G;
*************************** 1. row ***************************
Host: localhost
Db: db1
User: xxx
Select_priv: Y
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Execute_priv: N
Event_priv: N
Trigger_priv: N

這時候發(fā)現(xiàn),user 表中的 select_priv 變?yōu)?“N” ,而 db 表中增加了 db 為 xxx 的一條記錄。也就是說,當(dāng)只授予部分數(shù)據(jù)庫某些權(quán)限時,user 表中的相應(yīng)權(quán)限列保持 “N”,而將具體的數(shù)據(jù)庫權(quán)限寫入 db 表。table 和 column 的權(quán)限機制和 db 類似。

3. tables_priv記錄表權(quán)限

MySQL [db1]> create table t1(id int(10),name char(10));
Query OK, 0 rows affected (0.83 sec)

MySQL [db1]> grant select on db1.t1 to mmm@localhost;
Query OK, 0 rows affected, 2 warnings (0.06 sec)

MySQL [mysql]> select * from user where user='mmm'\G;
*************************** 1. row ***************************
Host: localhost
User: mmm
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
...

MySQL [mysql]> select * from db where user='mmm'\G;
Empty set (0.00 sec)


MySQL [mysql]> select * from tables_priv where user='mmm'\G;
*************************** 1. row ***************************
Host: localhost
Db: db1
User: mmm
Table_name: t1
Grantor: root@localhost
Timestamp: 0000-00-00 00:00:00
Table_priv: Select
Column_priv: 
1 row in set (0.00 sec)

ERROR: 
No query specified

MySQL [mysql]> select * from columns_priv where user='mmm'\G;
Empty set (0.00 sec)

可以看見tables_priv表中增加了一條記錄,而在user db columns_priv三個表中沒有記錄

從上例可以看出,當(dāng)用戶通過權(quán)限認證,進行權(quán)限分配時,將按照 ==user -> db -> tables_priv -> columns_priv== 的順序進行權(quán)限分配,即先檢查全局權(quán)限表 user,如果 user 中對應(yīng) 權(quán)限為 “Y”,則此用戶對所有數(shù)據(jù)庫的權(quán)限都為“Y”,將不再檢查 db、tables_priv 和 columns_priv;如果為“N”,則到 db 表中檢查此用戶對應(yīng)的具體數(shù)據(jù)庫,并得到 db 中為 “Y”的權(quán)限;如果 db 中相應(yīng)權(quán)限為 “N”,則再依次檢查tables_priv 和 columns_priv 中的權(quán)限,如果所有的都為“N”,則判斷為不具備權(quán)限。

二. 賬戶管理

授權(quán) grant

grant不僅可以用來授權(quán),還可以用來創(chuàng)建用戶。

授權(quán)的語法:

grant 權(quán)限列表 on 庫名.表名 to 用戶@主機 identified by '密碼';

創(chuàng)建用戶 p1 ,權(quán)限為可以在所有數(shù)據(jù)庫上執(zhí)行所有權(quán)限,只能從本地進行連接

MySQL [mysql]> grant all privileges on *.* to p1@localhost;
Query OK, 0 rows affected, 2 warnings (0.03 sec)

MySQL [mysql]> select * from user where user='p1'\G
*************************** 1. row ***************************
Host: localhost
User: p1
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: Y
Drop_priv: Y
Reload_priv: Y
Shutdown_priv: Y
Process_priv: Y
File_priv: Y
Grant_priv: N
References_priv: Y
Index_priv: Y
Alter_priv: Y
Show_db_priv: Y
Super_priv: Y
Create_tmp_table_priv: Y
Lock_tables_priv: Y
Execute_priv: Y
Repl_slave_priv: Y
Repl_client_priv: Y
Create_view_priv: Y
Show_view_priv: Y
Create_routine_priv: Y
Alter_routine_priv: Y
Create_user_priv: Y
Event_priv: Y
Trigger_priv: Y
Create_tablespace_priv: Y
ssl_type: 
ssl_cipher: 
x509_issuer: 
x509_subject: 
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: 
password_expired: N
password_last_changed: 2018-12-03 18:11:01
password_lifetime: NULL
account_locked: N
1 row in set (0.00 sec)

除了 grant_priv 權(quán)限外,所有權(quán)限在user 表里面都是 “Y”。

增加對 p1 的 grant 權(quán)限

MySQL [mysql]> grant all privileges on *.* to p1@localhost with grant option;
Query OK, 0 rows affected, 1 warning (0.03 sec)

MySQL [mysql]> select * from user where user='p1'\G
*************************** 1. row ***************************
Host: localhost
User: p1
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: Y
Drop_priv: Y
Reload_priv: Y
Shutdown_priv: Y
Process_priv: Y
File_priv: Y
Grant_priv: Y
References_priv: Y
Index_priv: Y
Alter_priv: Y
Show_db_priv: Y
Super_priv: Y
Create_tmp_table_priv: Y
Lock_tables_priv: Y
Execute_priv: Y
Repl_slave_priv: Y
Repl_client_priv: Y
Create_view_priv: Y
Show_view_priv: Y
Create_routine_priv: Y
Alter_routine_priv: Y
Create_user_priv: Y
Event_priv: Y
Trigger_priv: Y
Create_tablespace_priv: Y
ssl_type: 
ssl_cipher: 
x509_issuer: 
x509_subject: 
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: 
password_expired: N
password_last_changed: 2018-12-03 18:11:01
password_lifetime: NULL
account_locked: N
1 row in set (0.00 sec)

設(shè)置密碼賦予grant權(quán)限

MySQL [mysql]> grant all privileges on *.* to p1@localhost identified by '123' with grant option;
Query OK, 0 rows affected, 2 warnings (0.01 sec)

MySQL [mysql]> select * from user where user='p1'\G
*************************** 1. row ***************************
Host: localhost
User: p1
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: Y
Drop_priv: Y
Reload_priv: Y
Shutdown_priv: Y
Process_priv: Y
File_priv: Y
Grant_priv: Y
References_priv: Y
Index_priv: Y
Alter_priv: Y
Show_db_priv: Y
Super_priv: Y
Create_tmp_table_priv: Y
Lock_tables_priv: Y
Execute_priv: Y
Repl_slave_priv: Y
Repl_client_priv: Y
Create_view_priv: Y
Show_view_priv: Y
Create_routine_priv: Y
Alter_routine_priv: Y
Create_user_priv: Y
Event_priv: Y
Trigger_priv: Y
Create_tablespace_priv: Y
ssl_type: 
ssl_cipher: 
x509_issuer: 
x509_subject: 
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: *23AE809DDACAF96AF0FD78ED04B6A265E05AA257
password_expired: N
password_last_changed: 2018-12-03 18:14:40
password_lifetime: NULL
account_locked: N
1 row in set (0.00 sec)

在5.7版本后的數(shù)據(jù)庫,密碼字段改為authentication_string

創(chuàng)建新用戶 p2,可以從任何 IP 連接,權(quán)限為對 db1 數(shù)據(jù)庫里的所有表進行 select 、update、insert 和 delete 操作,初始密碼為“123”

MySQL [mysql]> grant select,insert,update,delete on db1.* to 'p2'@'%' identified by '123';
Query OK, 0 rows affected, 1 warning (0.01 sec)

MySQL [mysql]> select * from user where user='p2'\G;
*************************** 1. row ***************************
Host: %
User: p2
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
...
Create_tablespace_priv: N
ssl_type: 
ssl_cipher: 
x509_issuer: 
x509_subject: 
max_questions: 0
max_updates: 0
max_connections: 0
max_user_connections: 0
plugin: mysql_native_password
authentication_string: *23AE809DDACAF96AF0FD78ED04B6A265E05AA257
password_expired: N
password_last_changed: 2018-12-03 18:20:44
password_lifetime: NULL
account_locked: N
1 row in set (0.00 sec)

ERROR: 
No query specified

MySQL [mysql]> select * from db where user='p2'\G;
*************************** 1. row ***************************
Host: %
Db: db1
User: p2
Select_priv: Y
Insert_priv: Y
Update_priv: Y
Delete_priv: Y
Create_priv: N
Drop_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Create_view_priv: N
Show_view_priv: N
Create_routine_priv: N
Alter_routine_priv: N
Execute_priv: N
Event_priv: N
Trigger_priv: N
1 row in set (0.00 sec)

user 表中的權(quán)限都是“N”,db 表中增加的記錄權(quán)限則都是“Y”,這樣只授予用戶適當(dāng)?shù)臋?quán)限,而不會授予過多的權(quán)限。

本例中的 IP 限制為所有 IP 都可以連接,因此設(shè)置為 “%”,mysql 數(shù)據(jù)庫中是通過 user 表的 host 字段來進行控制,host 可以是以下類型的賦值。

注意: mysql 數(shù)據(jù)庫的 user 表中 host 的值為 “%” 或者空,表示所有外部 IP 都可以連接,但是不包括本地服務(wù)器 localhost,因此,如果要包括本地服務(wù)器,必須單獨為 localhost 賦予權(quán)限。

授予 super、process、file 權(quán)限給用戶 p3@%

MySQL [mysql]> grant super,process,file on db1.* to 'p3'@'%';
ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES


MySQL [mysql]> grant super,process,file on *.* to 'p3'@'%';
Query OK, 0 rows affected (0.03 sec)

這幾個權(quán)限都是屬于管理權(quán)限,因此不能夠指定某個數(shù)據(jù)庫,on 后面必須跟 *.*,否則會提示錯誤,如上

那這幾個權(quán)限是干啥的?

process通過這個權(quán)限,用戶可以執(zhí)行SHOW PROCESSLIST和KILL命令。默認情況下,每個用戶都可以執(zhí)行SHOW PROCESSLIST命令,但是只能查詢本用戶的進程。

擁有file權(quán)限才可以執(zhí)行 select ..into outfile和load data infile…操作,但是不要把file, process, super權(quán)限授予管理員以外的賬號,這樣存在嚴重的安全隱患。

super這個權(quán)限允許用戶終止任何查詢;修改全局變量的SET語句;使用CHANGE MASTER,PURGE MASTER LOGS

另外一個比較特殊的

usage權(quán)限

連接(登陸)權(quán)限,建立一個用戶,就會自動授予其usage權(quán)限(默認授予)。

該權(quán)限只能用于數(shù)據(jù)庫登陸,不能執(zhí)行任何操作;且usage權(quán)限不能被回收,也即``REVOKE用戶并不能刪除用戶。

查看賬號權(quán)限

賬號創(chuàng)建好后,可以通過如下命令查看權(quán)限:

show grants for user@host;
MySQL [mysql]> show grants for p2@'%';
+-------------------------------------------------------------+
| Grants for p2@% |
+-------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'p2'@'%' |
| GRANT SELECT, INSERT, UPDATE, DELETE ON `db1`.* TO 'p2'@'%' |
+-------------------------------------------------------------+
2 rows in set (0.00 sec)

更改賬戶權(quán)限

創(chuàng)建用戶賬號p4,權(quán)限為對db1所有表具有select權(quán)限

MySQL [mysql]> grant select on db1.* to p4@'%';
Query OK, 0 rows affected, 1 warning (0.01 sec)

MySQL [mysql]> show grants for p4@'%';
+-------------------------------------+
| Grants for p4@% |
+-------------------------------------+
| GRANT USAGE ON *.* TO 'p4'@'%' |
| GRANT SELECT ON `db1`.* TO 'p4'@'%' |
+-------------------------------------+
2 rows in set (0.00 sec)

增加delete權(quán)限

MySQL [mysql]> grant delete on db1.* to p4@'%';
Query OK, 0 rows affected (0.01 sec)

MySQL [mysql]> show grants for p4@'%';
+---------------------------------------------+
| Grants for p4@% |
+---------------------------------------------+
| GRANT USAGE ON *.* TO 'p4'@'%' |
| GRANT SELECT, DELETE ON `db1`.* TO 'p4'@'%' |
+---------------------------------------------+
2 rows in set (0.00 sec)

和已有的 select 權(quán)限進行合并

刪除delete權(quán)限

revoke 語句可以回收已經(jīng)賦予的權(quán)限

MySQL [mysql]> show grants for p4@'%';
+---------------------------------------------+
| Grants for p4@% |
+---------------------------------------------+
| GRANT USAGE ON *.* TO 'p4'@'%' |
| GRANT SELECT, DELETE ON `db1`.* TO 'p4'@'%' |
+---------------------------------------------+
2 rows in set (0.00 sec)

MySQL [mysql]> revoke delete on db1.* from p4@'%';
Query OK, 0 rows affected (0.01 sec)

MySQL [mysql]> show grants for p4@'%';
+-------------------------------------+
| Grants for p4@% |
+-------------------------------------+
| GRANT USAGE ON *.* TO 'p4'@'%' |
| GRANT SELECT ON `db1`.* TO 'p4'@'%' |
+-------------------------------------+
2 rows in set (0.00 sec)

usage能revoke?

MySQL [mysql]> revoke select on db1.* from p4@'%';
Query OK, 0 rows affected (0.02 sec)

MySQL [mysql]> show grants for p4@'%';
+--------------------------------+
| Grants for p4@% |
+--------------------------------+
| GRANT USAGE ON *.* TO 'p4'@'%' |
+--------------------------------+
1 row in set (0.00 sec)

MySQL [mysql]> revoke usage on db1.* from p4@'%';
ERROR 1141 (42000): There is no such grant defined for user 'p4' on host '%'

usage 權(quán)限不能被回收,也就是說,revoke 用戶并不能刪除用戶。

要徹底的刪除賬號,可以使用 drop user

drop user p4@'%';

賬號資源限制

創(chuàng)建 MySQL 賬號時,還有一類選項稱為賬號資源限制,這類選項的作用是限制每個賬號實際具有的資源限制,這里的“資源”主要包括:

max_queries_per_hour count : 單個賬號每小時執(zhí)行的查詢次數(shù)
max_upodates_per_hour count : 單個賬號每小時執(zhí)行的更新次數(shù)
max_connections_per_hour count : 單個賬號每小時連接服務(wù)器的次數(shù)
max_user_connections count : 單個賬號并發(fā)連接服務(wù)器的次數(shù)

注意:

添加用戶或者權(quán)限,使用mysql> flush privileges; 刷新權(quán)限

具體權(quán)限可以參考官網(wǎng)文檔

https://dev.mysql.com/doc/refman/5.7/en/privileges-provided.html

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • mysql 定時任務(wù)的實現(xiàn)與使用方法示例

    mysql 定時任務(wù)的實現(xiàn)與使用方法示例

    這篇文章主要介紹了mysql 定時任務(wù)的實現(xiàn)與使用方法,結(jié)合實例形式分析了MySQL定時任務(wù)的相關(guān)原理、創(chuàng)建及使用方法,需要的朋友可以參考下
    2019-11-11
  • 使用SQL將多行記錄合并成一行實例代碼

    使用SQL將多行記錄合并成一行實例代碼

    今天同事問了一個需求,就是將多行數(shù)據(jù)合并成一行進行顯示,查詢了一些資料,這篇文章主要給大家介紹了關(guān)于使用SQL將多行記錄合并成一行的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • mysql 表空間及索引的查看方法

    mysql 表空間及索引的查看方法

    mysql 表空間及索引的查看方法,需要的朋友可以參考下。
    2011-07-07
  • mysql 查詢當(dāng)天、本周,本月,上一個月的數(shù)據(jù)

    mysql 查詢當(dāng)天、本周,本月,上一個月的數(shù)據(jù)

    這篇文章主要介紹了mysql 查詢當(dāng)天、本周,本月,上一個月的數(shù)據(jù)的sql代碼,在文中還給大家提到了mysql如何查詢當(dāng)天信息,具體內(nèi)容詳情大家參考下本文
    2018-01-01
  • MySQL啟動報錯提示發(fā)生系統(tǒng)錯誤5,拒絕訪問的原因和解決方法

    MySQL啟動報錯提示發(fā)生系統(tǒng)錯誤5,拒絕訪問的原因和解決方法

    使用命令net start mysql啟動數(shù)據(jù)庫服務(wù)時候,出現(xiàn)如下錯誤提示發(fā)生系統(tǒng)錯誤5,拒絕訪問,所以本文給大家介紹了MySQL啟動報錯提示發(fā)生系統(tǒng)錯誤5,拒絕訪問的原因和解決方法,需要的朋友可以參考下
    2024-01-01
  • MySQL進階之路索引失效的11種情況詳析

    MySQL進階之路索引失效的11種情況詳析

    這篇文章主要介紹了MySQL查詢優(yōu)化中的11種常見情況,包括索引的使用和優(yōu)化策略,通過這些策略,開發(fā)者可以顯著提升查詢性能,需要的朋友可以參考下
    2025-03-03
  • 解析MySQL binlog

    解析MySQL binlog

    我們都知道,binlog可以說是MySQL中比較重要的日志了,在日常學(xué)習(xí)及運維過程中,也經(jīng)常會遇到。不清楚你對binlog了解多少呢?本篇文章將從binlog作用、binlog相關(guān)參數(shù)、解析binlog內(nèi)容三個方面帶你了解binlog
    2021-06-06
  • 解決MySQL8.0 輸入無誤仍然提示Access denied問題

    解決MySQL8.0 輸入無誤仍然提示Access denied問題

    這篇文章主要介紹了解決MySQL8.0 輸入無誤仍然提示Access denied問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • 詳解MySQL數(shù)據(jù)庫insert和update語句

    詳解MySQL數(shù)據(jù)庫insert和update語句

    用于操作數(shù)據(jù)庫的SQL一般分為兩種,一種是查詢語句,也就是我們所說的SELECT語句,另外一種就是更新語句,也叫做數(shù)據(jù)操作語句。接下來通過本文給大家介紹MySQL數(shù)據(jù)庫insert和update語句,需要的朋友一起學(xué)習(xí)吧
    2016-04-04
  • mysql數(shù)據(jù)庫的分區(qū)表示例代碼

    mysql數(shù)據(jù)庫的分區(qū)表示例代碼

    這篇文章主要介紹了mysql數(shù)據(jù)庫的分區(qū)表的相關(guān)資料,文章介紹了兩種創(chuàng)建SQL表分區(qū)的方法,分別是手動創(chuàng)建和使用MySQL的定時事件來自動創(chuàng)建分區(qū),手動創(chuàng)建分區(qū)時,需要在代碼中判斷分區(qū)并新增,可能會引入一些問題,需要的朋友可以參考下
    2024-11-11

最新評論

安丘市| 沙坪坝区| 海盐县| 故城县| 丰都县| 白山市| 怀集县| 九寨沟县| 龙游县| 灌南县| 汽车| 邛崃市| 名山县| 杭锦旗| 施甸县| 天柱县| 蚌埠市| 堆龙德庆县| 丰顺县| 松潘县| 马鞍山市| 安达市| 柳河县| 石屏县| 扶绥县| 城步| 揭东县| 漯河市| 遵化市| 苍梧县| 广东省| 年辖:市辖区| 郑州市| 武清区| 荆州市| 平塘县| 延庆县| 双流县| 武平县| 彰化县| 成都市|