mysql怎么给数据库添加权限

mysql怎么给数据库添加权限,第1张

可以用phpMyAdmin通过输入语句的方法建立用户,或者一般的图形界面的SQL管理程序也可以建立和编辑用户.

这里只说使用GRANT语句的方法,当然还有直接修改MySQL表的方法,不过很麻烦,用的人不多~

前提是有MySQL root权限

例子:建立另一个超级用户(所有权限)的方法

GRANT ALL ON *.* TO username@localhost IDENTIFIED BY 'password' WITH GRANT OPTION

localhost是主机名,也可以是IP,用于限定这个用户是否可以远程连接.还可以用通配符"%",比如%.im286.com,或者202.97.224.%

*.* 中第一个星星是数据库名(*为所有数据库),第二个星星是表名(*为前面数据库下的所有表)

ALL 是指全部语句的 *** 作权限(经常看到虚拟主机等的用户没有DROP权限,就是这里做了手脚)

语法大概就是这样吧.

创建新的用户名和密码

create

user

username

identified

by

password

给用户分配权限

GRANT

privileges

ON

databasename.tablename

TO

'username'@'host'

grant

all

privileges

on

*.*

to

'username'@'localhost'

identified

by

'password'

删除权限

REVOKE

ALL

PRIVILEGES

ON

*.*

FROM

'username'@'localhost'

分配指定库的权限

GRANT

ALL

PRIVILEGES

ON

database1.*

TO

'username'@'localhost'

IDENTIFIED

BY

'password'

分配指定 *** 作的权限

GRANT

SELECT,

UPDATE

ON

database1.*

TO

'username'@'localhost'

IDENTIFIED

BY

'password'

刷新权限

FLUSH

PRIVILEGES

删除用户

DROP

USER

username@localhost

设置默认的编码

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示

character_set_server=utf8

init_connect='SET

NAMES

utf8'

重启mysql

systemctl

restart

mysqld

更新用户的密码

SET

PASSWORD

FOR

'username'@'localhost'

=

PASSWORD("123456")

用ROOT账户登陆(有权限对整个数据库 *** 作的账户)点权限设置,然后添加一用户 。在Database for user 那里选择Create database with same name and grant all privileges 如果只是想指定它对其中一数据库有管理权限就不要选择全局权限中的任何一项 ,点执行 完成创建 ,下面就是新建一数据库,在点权限设置 ,在“按数据库指定权限”那里把你刚新建的数据库选择上,点执行就可以了!这样你新建的账户只对该数据库有完全控制的权限,对其他用户也没访问权限!


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

原文地址:https://54852.com/zaji/8523166.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存