两种方法都可以进行创建:
第一种:客户端操作
-- 首先查看mysql中所有的用户
SELECT user,host FROM mysql.user;
-- 查看指定用户的权限情况
SELECT * FROM mysql.user WHERE user='root'
-- 查看当前用户(自己)权限
show grants;
-- 查看其他 MySQL 用户权限
show grants for dba@localhost;
-- 修改指定用户密码
update user set password=password('new_password') where user='hail' and host='localhost';
-- 1.创建一个用户
CREATE USER 'name'@'%' IDENTIFIED BY 'password';
-- 解释:
name:是创建的名字 %:表示将其与任何主机关联 password:密码自行设置
-- 2.给用户赋予只读权限
GRANT SELECT ON post.post_data TO 'name'@'%';
GRANT [权限]
ON [库.表]
TO [用户名]@[IP]
IDENTIFIED BY [密码]
-- 3.MySQL 赋予用户权限命令的简单格式可概括为:
grant 权限 on 数据库对象 to 用户
-- 以下是 grant 普通数据用户,查询、插入、更新、删除 以及所有权限,数据库中所有表数据的权利。
grant select on testdb.* to common_user@’%’
grant insert on testdb.* to common_user@’%’
grant update on testdb.* to common_user@’%’
grant delete on testdb.* to common_user@’%’
-- 赋予某用户 库的所有表的只读权限
GRANT SELECT ON Entry_volume.* TO 'postuser'@'%';
-- 赋予某用户 所有库的所有表的只读权限
GRANT SELECT ON *.* TO 'postuser'@'%';
-- 4.刷新权限
FLUSH PRIVILEGES;
-- 5.删除账户及权限
drop user 用户名@’%’
drop user 用户名@localhost
第二种:是Linux上登陆mysql的root账号 mysql -uroot -p
输入密码 进入之后就和客户端的操作一致
可能出现的问题:
再给用户赋予表权限的时候可能出现一下问题:
解决方案:
第一:报错可能是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的’’@'localhost’可以看出来。
解决方法:删除mysql数据库user表里用户名为空的用户。
第二:可能是权限不够
-- 更新权限:
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
第三:可以在pycharm中进行修改
-- MySQL服务的 启动:
service mysqld start
-- MySQL服务的停止
service mysqld stop
-- MySQL的重启
service mysqld restart
本文转载自: https://blog.csdn.net/zibo_CXY/article/details/134383745
版权归原作者 玫瑰有了花期 所有, 如有侵权,请联系我们删除。
版权归原作者 玫瑰有了花期 所有, 如有侵权,请联系我们删除。