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'@'%' |
+--------------------------------------------+

三十二. 多表查询 MySQL管理工具 、 用户授权及撤销的更多相关文章

  1. mybatis学习 十二 多表查询

    Mybatis 实现多表查询方式: (1)业务装配.对两个表编写单表查询语句,在业务(Service)把查询的两个结果进行关联. (2)使用Auto Mapping特性,在实现两表联合查询时通过别名完 ...

  2. Python学习笔记(十二)—Python3中pip包管理工具的安装【转】

    本文转载自:https://blog.csdn.net/sinat_14849739/article/details/79101529 版权声明:本文为博主原创文章,未经博主允许不得转载. https ...

  3. FreeSql (二十)多表查询 WhereCascade

    WhereCascade 多表查询时非常方便,有了它可以很轻松的完成类型软删除,租户条件的功能. IFreeSql fsql = new FreeSql.FreeSqlBuilder() .UseCo ...

  4. 三十二、Java图形化界面设计——布局管理器之CardLayout(卡片布局)

    摘自 http://blog.csdn.net/liujun13579/article/details/7773945 三十二.Java图形化界面设计--布局管理器之CardLayout(卡片布局) ...

  5. 百万年薪python之路 -- MySQL数据库之 MySQL行(记录)的操作(二) -- 多表查询

    MySQL行(记录)的操作(二) -- 多表查询 数据的准备 #建表 create table department( id int, name varchar(20) ); create table ...

  6. 进击的Python【第十二章】:mysql介绍与简单操作,sqlachemy介绍与简单应用

    进击的Python[第十二章]:mysql介绍与简单操作,sqlachemy介绍与简单应用 一.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数 ...

  7. Java进阶(三十二) HttpClient使用详解

    Java进阶(三十二) HttpClient使用详解 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们 ...

  8. Gradle 1.12用户指南翻译——第三十二章. JDepend 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  9. SQL注入之Sqli-labs系列第三十二关(基于宽字符逃逸注入)

    开始挑战第三十二关(Bypass addslashes) 0x1查看源代码 (1)代码关键点 很明显,代码中利用正则匹配将 [ /,'," ]这些三个符号都过滤掉了 function che ...

随机推荐

  1. Django框架2——模板

    django框架2--模板 直接将HTML硬编码到你的视图里却并不是一个好主意: 对页面设计进行的任何改变都必须对 Python 代码进行相应的修改. 站点设计的修改往往比底层 Python 代码的修 ...

  2. centos7 为使用su命令的用户添加pam授权认证

    # 查看用户所属哪个组 groups 用户名 #查看当前有哪些用户运行程序 ps -aux|awk '{print $1}'|sort -rn|uniq -c|sort -rn # 清理不再使用的用户 ...

  3. Python 数据结构理解分享

    摘要:分享学习Python数据结构的一些理解,主要包含序列(如列表和元组),映射(如字典)以及集合3中基本的数据结构,以及可变和不可变数据类型. Python 中的数据结构是根据某种方式将数据元素组合 ...

  4. 08 IO流(五)——文件字符流FileWriter/FileReader

    对比文件字节流的优势 对于文本文件的数据传输,使用文件字符流,就不用考虑编码转码的问题. 对比文件字节流,在方法上的不同有哪些 文件字符流有append方法: Writer append(char c ...

  5. jdk8新特性--函数式接口的使用

    函数式接口的概念: 函数式接口的格式: 示例: 函数式接口的使用: 简化lambda表达式:

  6. vue 等比例截图组件,支持缩放和旋转

    <template> <div class="crop-image" :style="wrapStyle"> <img :src= ...

  7. PHP Math常量

    常量名 常量名 常量值 PHP M_E e 2.7182818284590452354 4 M_EULER Euler 常量 0.57721566490153286061 5.2.0 M_LNPI l ...

  8. is 和 as 使用

    类型判断 as: var newParser = parser as ClassA ; 转为ClassA类型赋值给newParser is: var flag = parser is ClassA ; ...

  9. css 垂直方向 margin 边距 重合

    1:控制两个相邻边盒子之间的距离,在A或者B盒子上用margin控制,就可以控制距离了. 2:父子级之间的元素,常规文档流中,只要垂直外边距直接接触就会发生合并.比如在写header标签时,想移动he ...

  10. 计算机等级考试【二级C语言程序设计】知识点整理

    *免责声明:本文章中所收集或者引用到的内容的所有版权均为引用内容的原作者所有,本站仅作收集并整理,不承担任何法律责任! *题库收集来源于:[未来教育考试软件2017年版 - 计算机二级 - C语言程序 ...