• 三十二. 多表查询 MySQL管理工具 、 用户授权及撤销


    1.MySQL管理工具 部署LAMP+phpMyAdmin平台
    安装httpd、mysql、php-mysql及相关包
    启动httpd服务程序
    解压phpMyAdmin包,部署到网站目录
    配置config.inc.php,指定MySQL主机地址
    创建授权用户
    浏览器访问、登录使用
     
    mysql50:192.168.4.50
     
    1.1 准备软件的运行环境 lamp
    ]# yum -y install httpd php php-mysql
    ]# systemctl restart httpd
    ]# systemctl enable httpd
    ]# vim /var/www/html/test.php
    <?php
    $x=mysql_connect("localhost","root","123456");
    if($x){   echo "ok";    }else{    echo "no";    };
    ?>
    ok
     
    1.2 安装phpMyAdmin
    ]# tar-zxf phpMyAdmin-2.11.11-all-languages.tar.gz -C /var/www/html/
    ]# mv phpMyAdmin-2.11.11-all-languages  phpMyAdmin //改变目录名
    ]# chown -R apache:apache phpMyAdmin/
     
    1.3 修改软件的配置文件定义管理的数据库服务器
    ]# cd phpMyAdmin
    phpMyAdmin]# cp config.sample.inc.php config.inc.php  
    //备份主配置文件
    phpMyAdmin]# vim config.inc.php //编辑主配置文件
    17 $cfg['blowfish_secret'] = 'plj123';     //给cookie做认证的值,可以随便填写
    31 $cfg['Servers'][$i]['host'] ='localhost';  //指定主机名,定义连接哪台服务器
    :wq                   
    用户名是root,密码是123456 可视化操作数据库
     
    2.密码恢复及设置
    恢复MySQL管理列表
    正常设置管理密码
     
    2.1 恢复密码
    ]# systemctl stop mysqld.service
    ]# systemctl status mysqld.service 
    ]# vim /etc/my.cnf
    [mysqld]
    skip_grant_tables=1
    ...
    ]# systemctl restart mysqld.service
    ]# service mysql status
    ]# mysql -u root
    Enter password:  //直接回车即可
    mysql> UPDATE mysql.user SET authentication_string=PASSWORD('1234567')
        -> WHERE user='root' AND host='localhost';    //重设root的密码
    mysql> FLUSH PRIVILEGES;   //刷新授权表
    ]# vim /etc/my.cnf
    [mysqld]
    #skip_grant_tables=1
    ]# systemctl restart mysqld.service
    重新登陆即可
     
    2.2 正常设置MySQL管理密码
    方法1,在Shell命令行下设置
    使用mysqladmin管理工具,需要验证旧的密码。比如,以下操作将会把root的密码设置为 1234567:
    ]# mysqladmin -u root -p password '1234567'                    
    Enter password:    //验证原来的密码
     
    方法2
    mysql> SET PASSWORD FOR root@localhost=PASSWORD('1234567');
     
    方法3
    mysql> GRANT all ON *.* TO root@localhost IDENTIFIED BY '1234567';
     
    方法4
    mysql> UPDATE mysql.user SET authentication_string=PASSWORD('1234567')
        -> WHERE user='root' AND host='localhost';  //重设root的密码
     
    3.用户授权及撤销
    3.1 192.168.4.50授权
    mysql> GRANT all ON *.* TO root@'192.168.4.%' IDENTIFIED BY '123456';
    192.168.4.51登陆:
    ]# mysql -h 192.168.4.50 -uroot -p123456
     
    3.2 授权时,赋予授权权限
    mysql> GRANT all ON *.* TO zs@localhost(仅本地可登)
        -> IDENTIFIED BY '1234567'
        -> WITH GRANT OPTION;
    查看授权:
    mysql> SHOW GRANTS FOR zs@localhost;
     
    3.3 撤销root用户的授权
    mysql> REVOKE all ON *.* FROM root@localhost;
    解决办法:从其他超级权限用户登陆
    mysql> GRANT all ON *.* TO root@localhost IDENTIFIED BY '123456';
     
    3.4 允许webuser从任意客户机登录,只对webdb库有完全权限,密码为 888888
    mysql> GRANT all ON webdb.* TO webuser@'%' IDENTIFIED BY '888888';
    撤销webuser的完全权限,改为查询权限
    mysql> REVOKE all ON webdb.* FROM webuser@'%';
    只赋予查询权限:
    mysql> GRANT select ON webdb.* TO webuser@'%';
    确认授权更改结果
    mysql> SHOW GRANTS FOR webuser@'%';
    +--------------------------------------------+
    | Grants for webuser@%                       |
    +--------------------------------------------+
    | GRANT USAGE ON *.* TO 'webuser'@'%'        |
    | GRANT SELECT ON `webdb`.* TO 'webuser'@'%' |
    +--------------------------------------------+
  • 相关阅读:
    8086汇编——课堂笔记整理2
    8086汇编——课堂笔记整理1
    PHP___认证___访问权限设置
    PHP___过期header expires
    Vue深度学习(5)-过渡效果
    Vue深度学习(4)-方法与事件处理器
    Vue深度学习(3)
    Vue深度学习(2)
    Vue深度学习(1)
    Vue.js 基本语法
  • 原文地址:https://www.cnblogs.com/luwei0915/p/10491080.html
Copyright © 2020-2023  润新知