zoukankan      html  css  js  c++  java
  • mysql用户权限管理

    -- 查询数据库用户
    select user
    
    -- 使用ip链接数据库(%匹配所有)
    mysql -h192.168.1.% -ulisi -pxxxx;
    
    -- 修改host域,使IP可以链接上
    update user set host='192.168.1.%' where user='root';
    flush privileges;
    
    -- 修改用户密码,password()对密码加密
    update user set password=password('11111') where xxxx;
    flush privileges;
    
    -- 查看用户以及权限
    select * from user where user='lisi' G;
    
    -- 查看库表的级别和host链接状态
    select * from db G;
    select * from table G;
    
    -- 新增用户并赋予全局权限
    -- 常用的权限all,create,drop,insert,delete,update,select
    -- 比如grant all on *.* to lisi@'192.168.1.%' identfied by'1111';
    grant [权限1,权限2,权限3.。] on *.* to user@'host' identfied by'password';
    
    -- 回收全局权限
    -- 比如revoke all on *.* from lisi@'192.168.1.%';
    revoke all on *.* from user@'host' identfied by'password';
    
    -- 针对库做授权
    -- 比如grant all on test.* to lisi@'192.168.1.%';
    grant all on tbName.* to lisi@'192.168.1.%';
    revoke all on tbName.* to lisi@'192.168.1.%';
    
    -- 针对表做授权
    -- 比如grant insert,update,select on test.goods to lisi@'192.168.1.%';
    grant insert,update,select on dbName.tbName to lisi@'192.168.1.%';
    revoke all on dbName.tbName to lisi@'192.168.1.%';
    
    -- MYSQL添加远程用户或允许远程访问三种方法
    -- 添加远程用户admin密码为password
    GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY password WITH GRANT OPTION;
    GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY password   WITH GRANT OPTION;
    
    -- 用root用户登陆,然后:
    grant all privileges on *.* to userName @"%" identified by "密码";
    flush privileges;   * 刷新刚才的内容*
    
    -- 格式:grant 权限 on 数据库教程名.表名 to 用户@登录主机 identified by "用户密码";@ 后面是访问mysql的客户端ip地址(或是 主机名)
    -- % 代表任意的客户端,如果填写 localhost 为本地访问(那么  用户就不能远程访问该mysql数据库了,在服务器上localhost是指服务器主机)。
    -- 同时也可以为现有的用户设置是否具有远程访问权限。如下:
    use mysql;
    update db set host = '%' where user = 'userName'; (如果写成 host=localhost 那此用户就不具有远程访问权限)
    flush privileges;
    grant all privileges on *.* to 'userName'@'%' identified by 'password' with grant option;
    
    -- 使用grant语句添加:
    -- 首先在数据库本机上用root用户登录mysql(我是用远程控制linux服务器,相当于在服务器本机登录mysql了),然后输入:
    grant all privileges on *.* to admin@localhost identified by 'password' with grant option;
    
    -- 添加一个用户admin并授权可从任何其它主机(localhost)发起的访问(通配符%)。使用这一条语句即可。
    grant all privileges on *.* to admin@"%" identified by 'password' with grant option;
    
    -- 使用insert语句:
    -- 用户信息可在mysql数据库中的users表中查看,这里不在介绍了就。数清y的个数哦。
    -- 好了,使用admin帐号连接试试看,我是屡试屡成功哦,呵呵!
    insert into user values('%','admin',password('password'), 'y','y','y','y','y','y','y','y','y','y','y','y','y','y');
    
    -- 添加远程用户admin密码为password
    grant all privileges on *.* to admin@localhost identified by 'password' with grant option;
    grant all privileges on *.* to admin@"%" identified by 'password' with grant option;
    

    由于项目开发的要求数据库的设计不得不用远程模式。但是数据库的远程设置并没那么简单,该项目的数据库是mysql5.0。刚开始以为只要装了数据库服务器就可以进行远程链接了,但是mysql的设置是为了用户的安全,系统默认的设置是不允许远程用户连接,只能本地的用户连接。只要我们设置下系统的管理员用户的host这一项的值就可以给远程的用户访问了。数据库权限管理极其重要,特别是主从数据库配置以及读写分离涉及到赋予表级权限;

  • 相关阅读:
    神经网络中的数据预处理方法 Data Preprocessing
    keras中 LSTM 的 [samples, time_steps, features] 最终解释
    keras 学习文档
    tensorflow 中 softmax_cross_entropy_with_logits 与 sparse_softmax_cross_entropy_with_logits 的区别
    对 tensorflow 中 tf.nn.embedding_lookup 函数的解释
    好久不git这么多问题
    去不去创业?
    抗压能力
    培养好的阅读习惯
    深度工作
  • 原文地址:https://www.cnblogs.com/aten/p/7998806.html
Copyright © 2011-2022 走看看