关闭数据库权限不足怎么办

关闭数据库权限不足怎么办,第1张

正常的root是向上面的这些一样,所有的root权限都是开启的,但是我之前出现1045问题的原因发现了最底下的Event以及Trigger权限并没有加上

如果想要加上在navicat上有没有权限,这个时候就应该到本地cmd终端中进行权限的添加、

具体的 *** 作:

1. 可以进入数据库,但无update权限:

*** 作过程:在WINDOWS的DOS窗口下,进入MYSQL安装目录的BIN目录,

运行mysqld-nt --skip-grant-tables,当前窗口将会停止。

另外打开一个命令行窗口,执行mysql 如果提示没有这个命令,先进入MYSQL的安装位置下BIN目录再运行mysql

>use mysql

>update user set Update_priv ='Y' where user = 'root'

如果root 没有所有数据的权限

更新的MYSQL.USER表的所有字段中为N的为Y就可以了。

update user set Select_priv ='Y' where user = 'root'

update user set Insert_priv ='Y' where user = 'root'

update user set Update_priv ='Y' where user = 'root'

update user set Delete_priv ='Y' where user = 'root'

update user set Create_priv ='Y' where user = 'root'

update user set Drop_priv ='Y' where user = 'root'

update user set Reload_priv ='Y' where user = 'root'

update user set Shutdown_priv ='Y' where user = 'root'

update user set Process_priv ='Y' where user = 'root'

update user set File_priv ='Y' where user = 'root'

update user set Grant_priv ='Y' where user = 'root'

update user set References_priv ='Y' where user = 'root'

update user set Index_priv ='Y' where user = 'root'

update user set Alter_priv ='Y' where user = 'root'

update user set Show_db_priv ='Y' where user = 'root'

update user set Super_priv ='Y' where user = 'root'

update user set Create_tmp_table_priv ='Y' where user = 'root'

update user set Lock_tables_priv ='Y' where user = 'root'

update user set Execute_priv ='Y' where user = 'root'

update user set Repl_slave_priv ='Y' where user = 'root'

update user set Repl_client_priv ='Y' where user = 'root'

update user set Create_view_priv ='Y' where user = 'root'

update user set Show_view_priv ='Y' where user = 'root'

update user set Create_routine_priv ='Y' where user = 'root'

update user set Alter_routine_priv ='Y' where user = 'root'

update user set Create_user_priv ='Y' where user = 'root'

update user set Event_priv ='Y' where user = 'root'

update user set Trigger_priv ='Y' where user = 'root'

数据库的权限是指允许特定用户访问特定数据库或数据库表的授权。按照降序范围,数据库的权限主要有三种类型:数据库、系统和对象

1. 数据库权限:

执行特定类型的SQL语句;

访问其他用户的对象;

控制计算资源的使用;

不适用于数据库管理员(DBA)。

2. 系统权限:

对特定类型的对象执行活动,如创建、更改、删除等;

例如,增加或删除某个数据库任何表格的行与列。

3. 对象权限:

对特定表、函数或包执行特定 *** 作的权限;

例如,删除某个表格中的行;

允许用户插入、删除、更新或选择数据库对象中的数据;

对象的所有者拥有该对象的所有对象权限,并且这些权限不能被撤销;

对象的所有者可以将该对象的对象权限授予其他数据库用户;

具有管理员权限的用户可以向用户授予和撤销对象权限,该用户无授予权限的对象。

针对数据库的权限有对应的权限命令,在多用户数据库环境中加强数据库安全。权限命令主要有三个:

1. GRANT命令:提供用户对数据库对象的访问权限,还允许用户向其他用户授予访问权限。该命令的基本语法是:

GRANT SELECT ON <table1>to <user1>授予user1对table1的SELECT *** 作权限

2. REVOKE命令:删除用户对数据库对象的访问权限。该命令的基本语法是:

REVOKE DELETE ON <table1>FROM <user1>删除user1对table1的DELETE *** 作权限

3. DENY命令:拒绝对对象的权限,并阻止主体基于组或角色中的成员身份获得GRANT权限。该命令的基本语法是:

DENY UPDATE ON <table1>to <user1>拒绝user1对table1的UPDATE *** 作权限


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10027740.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存