需求说明:
在linux服务器上创建用户,该用户对于服务器上的Mysql数据库的某个库只能具有访问权限,不可以进行增删改操作。
需求实现:
# 使用root登录 adduser dataread # 创建用户 dataread passwd dataread # 为dataread设置密码 whereis mysql # 查看mysql的客户端路径 cd /app/mysql/bin # 切到数据库客户端的安装目录 mysql -uroot -p******** # 登录mysql的客户端 show databases; # 查看数据库中所有的库 use mysql; # 进入mysql默认库,在该库中操作访问权限 GRANT SELECT ON database.* TO 'dataread'@'%' IDENTIFIED BY "dataread"; # 为dataread用户设置database数据库的select权限,且支持所有ip操作 FLUSH PRIVILEGES; # 刷新数据库,使得刚刚的改动生效 exit:# 退出使用新创建的账号重新登录即可查看正常权限,此时直接切换到新创建的用户登录数据库可能有问题,建议重新登录
linux中删除用户、Mysql中删除用户
userdel -r dataread; # linux # 删除dataread用户及其home目录下的工作文件 SELECT * FROM mysql.user WHERE user='dataread'\G # 查看当前用户的用户权限 Delete FROM mysql.user Where User='dataread'; # 删除数据库的用户表中的用户信息
总结
有其他系统需要使用当前笔者所在系统的数据库,但是他们只需要从库中拉取数据,不需要增删改,所以就给他弄了只读的用户允许他们操作。