首页 养生问答 疾病百科 养生资讯 女性养生 男性养生

如何给mysql增加一个用户,要求只对某一数据库拥有一切权限

发布网友 发布时间:2022-04-24 17:45

我来回答

2个回答

懂视网 时间:2022-04-30 00:44

1 连接到mysql

mysql   -h主机地址  -u用户名  -p密码

例1:假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:

mysql -h110.110.110.110 -uroot -pabcd123

(注:u与root可以不用加空格,其它也一样)

2 退出mysql 命令:

exit

3 修改密码

mysqladmin -u 用户名 -p旧密码 password 新密码


 增加mysql的新用户与修改权限


1 grant 权限 on 数据库.* to 用户名@登陆主机  identified by  "密码";

  grant  all  on  *.*  to  *.*  to 用户名@登陆主机  identified by "密码";#这个用户对所有的数据库拥有所有的权限。

2 create user :用于创建新的用户账户(从5.0版本开始有这个命令),在创建这个用户的时候不分配任何权限,需要在创建之后通过grant命令来给改用户分配相应的权限。

eg:create user guest@localhost identified by ’123456′; 

    grant select on mydb.* to guest@localhost;

3 drop user:删除一个用户账户

    eg:drop user guest;

4 rename user:可以实现重命名一个用户账号。


5 grant:用于管理访问权限,也就是给用户账号授权。当然它同样可以创建一个新的用户账户。

  eg:

  grant select, insert, update, delete on new_db.* to guest@’%’ identified by ’888′;

  grant 权限 on 数据库.表 to 用户 @ 访问方式 identified by 密码   grant select on mydb.* to guest@localhost identified by ’123456′;

BTW:如果需要一个空密码或者无密码的账户,必须先用Create User命令,然后通过grant来分配权限。如果如下操作:  grant all privileges on mydb.* to visitor@’%’ ;

而在数据库user表中没有先创建visitor用户,则会发生如下错误:

  "Can’t find any matching row in the user table"。

   grant只能创有密码的账户。

6 revoke:删除一个账户,具体查看MySQL的文档


参考:http://see.xidian.edu.cn/cpp/u/mysql_ml/

本文出自 “天道酬勤” 博客,请务必保留此出处http://luzhi1024.blog.51cto.com/8845546/1655471

mysql登录连接、增加用户、修改权限

标签:identified   password   修改密码   create   用户名   mysql   

热心网友 时间:2022-04-29 21:52

可以用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权限,就是这里做了手脚)
语法大概就是这样吧.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com