南昌网站设计网站开发,加强网站建设 实施政务公开,做搜狗手机网站优化排,wordpress怎么适应手机端mysql权限管理#xff1a;mysql的权限控制#xff0c;首先在user表判断有没有权限连#xff0c;连上后看有没有全局权限。然后看db表有哪些库级别的权限。然后看tables_priv表有哪些表级别的权限。最后还可以看有哪些列级别的权限。mysql权限检查#xff1a;1.有没有权连接…mysql权限管理mysql的权限控制首先在user表判断有没有权限连连上后看有没有全局权限。然后看db表有哪些库级别的权限。然后看tables_priv表有哪些表级别的权限。最后还可以看有哪些列级别的权限。mysql权限检查1.有没有权连接上来2.有没有权执行操作(crud)服务器是如何判断用户有没有权限连接上来1.你从哪里来host2.你是谁user3.你的密码用户的这3个信息存储在mysql数据库的user表下mysql usemysqlmysql desc user;mysql select Host,User from user;--------------------------| Host | User |--------------------------| localhost | mysql.session |mysql.session用户必须从localhost连接| localhost | mysql.sys |mysql.sys用户必须从localhost连接| localhost | root |root用户必须从localhost连接--------------------------就算知道用户名和密码但是可以限制ip。修改user的host域update user set host192.168.1.101 where userroot;flushprivileges; 冲刷权限如何修改用户的密码update user set passwordpasswiord(111111) where userrootflushprivileges;mysql库下有一个db表用户连上来先通过user表看能不能进来然后经过db表判断有没有某个库的操作权然后通过tables_priv判断有没有库下哪个表的权限。//新增一个用户grant[权限1权限2权限3......] on 哪个库.哪个表 to 用户host identified by password常用权限all(所有权限)creat,drop,insert,delete,update,selectmysql grant all on *.* to lisi127.0.0.1 identified by 111111;Query OK,0rows affectedmysql select Host,User from user;--------------------------| Host | User |--------------------------| 127.0.0.1 | lisi || localhost | mysql.session || localhost | mysql.sys || localhost | root |--------------------------C:\Users\Administratormysql -h127.0.0.1 -ulisi -p //用户lisi登陆Enter password:******Welcometo the MySQL monitor. Commands end with ; or\g.Your MySQL connection idis 8Server version:5.7.20MySQL Community Server (GPL)mysql select * from user where userlisi\G;*************************** 1. row ***************************Host:127.0.0.1User: lisiSelect_priv: YInsert_priv: YUpdate_priv: YDelete_priv: YCreate_priv: YDrop_priv: YReload_priv: YShutdown_priv: YProcess_priv: YFile_priv: YGrant_priv: NReferences_priv: YIndex_priv: YAlter_priv: YShow_db_priv: YSuper_priv: YCreate_tmp_table_priv: YLock_tables_priv: YExecute_priv: YRepl_slave_priv: YRepl_client_priv: YCreate_view_priv: YShow_view_priv: YCreate_routine_priv: YAlter_routine_priv: YCreate_user_priv: YEvent_priv: YTrigger_priv: YCreate_tablespace_priv: Yssl_type:ssl_cipher:x509_issuer:x509_subject:max_questions:0max_updates:0max_connections:0max_user_connections:0plugin: mysql_native_passwordauthentication_string:*FD571203974BA9AFE270FE62151AE967ECA5E0AApassword_expired: Npassword_last_changed:2017-12-29 21:30:25password_lifetime:NULLaccount_locked: N1 row in set (0.00sec)//收回权限revoke all on *.* from lisi127.0.0.1,mysql revoke all on *.* from lisi127.0.0.1;Query OK,0rows affectedmysql select * from user where userlisi\G;*************************** 1. row ***************************Host:127.0.0.1User: lisiSelect_priv: NInsert_priv: NUpdate_priv: NDelete_priv: NCreate_priv: NDrop_priv: NReload_priv: NShutdown_priv: NProcess_priv: NFile_priv: NGrant_priv: NReferences_priv: NIndex_priv: NAlter_priv: NShow_db_priv: NSuper_priv: NCreate_tmp_table_priv: NLock_tables_priv: NExecute_priv: NRepl_slave_priv: NRepl_client_priv: NCreate_view_priv: NShow_view_priv: NCreate_routine_priv: NAlter_routine_priv: NCreate_user_priv: NEvent_priv: NTrigger_priv: NCreate_tablespace_priv: Nssl_type:ssl_cipher:x509_issuer:x509_subject:max_questions:0max_updates:0max_connections:0max_user_connections:0plugin: mysql_native_passwordauthentication_string:*FD571203974BA9AFE270FE62151AE967ECA5E0AApassword_expired: Npassword_last_changed:2017-12-29 21:30:25password_lifetime:NULLaccount_locked: N1 row in set (0.00sec)mysql库下面的user里面可以检测能不能登陆并且里面的权限是全局的所有库所有表的。//不是全局授权而是分库分表管理权限。grant all on test3.* to lidi127.0.0.1; //给lisi test3库所有表的所有权限。//针对某个表做授权grant creat,drop,insert,update,select on test3.goods to lisi127.0.0.1;//test3库的goods表做权限控制//数据库级别的权限在db表中表级别的权限在tables_priv表中。mysql select * from db \G; //哪个用户在哪个库哪个主机有哪些权限*************************** 1. row ***************************Host: localhostDb: performance_schemaUser: mysql.sessionSelect_priv: YInsert_priv: NUpdate_priv: NDelete_priv: NCreate_priv: NDrop_priv: NGrant_priv: NReferences_priv: NIndex_priv: NAlter_priv: NCreate_tmp_table_priv: NLock_tables_priv: NCreate_view_priv: NShow_view_priv: NCreate_routine_priv: NAlter_routine_priv: NExecute_priv: NEvent_priv: NTrigger_priv: N*************************** 2. row ***************************Host: localhostDb: sysUser: mysql.sysSelect_priv: NInsert_priv: NUpdate_priv: NDelete_priv: NCreate_priv: NDrop_priv: NGrant_priv: NReferences_priv: NIndex_priv: NAlter_priv: NCreate_tmp_table_priv: NLock_tables_priv: NCreate_view_priv: NShow_view_priv: NCreate_routine_priv: NAlter_routine_priv: NExecute_priv: NEvent_priv: NTrigger_priv: Y*************************** 4. row ***************************Host:127.0.0.1Db: test2User: lisiSelect_priv: YInsert_priv: YUpdate_priv: YDelete_priv: YCreate_priv: YDrop_priv: YGrant_priv: NReferences_priv: YIndex_priv: YAlter_priv: YCreate_tmp_table_priv: YLock_tables_priv: YCreate_view_priv: YShow_view_priv: YCreate_routine_priv: YAlter_routine_priv: YExecute_priv: YEvent_priv: YTrigger_priv: Y4 rows in set (0.00sec)mysql select * fromtables_priv \G;*************************** 1. row ***************************Host: localhostDb: mysqlUser: mysql.sessionTable_name:userGrantor: bootconnectinghostTimestamp: 0000-00-00 00:00:00Table_priv:SelectColumn_priv:*************************** 2. row ***************************Host: localhostDb: sysUser: mysql.sysTable_name: sys_configGrantor: rootlocalhostTimestamp: 2017-12-25 15:09:21Table_priv:SelectColumn_priv:*************************** 3. row ***************************Host:127.0.0.1Db: test3User: lisiTable_name: goodsGrantor: rootlocalhostTimestamp: 0000-00-00 00:00:00Table_priv:Select,Insert,Update,Create,DropColumn_priv:3 rows in set (0.00sec)//mysql的权限控制可以精确到列常用的授权项