Linux Mysql数据库安全配置
Linux Mysql数据库安全配置
目录:
1.修改mysql管理员账号root的密码(2种方法)
2.修改mysql管理员账号root
3.mysql管理员root账号密码遗忘解决办法(2种方法)
4.创建数据库用户(3种方法)
5.mysql数据库权限管理
本地权限
网络权限
撤销权限
删除用户
一、修改mysql管理员账号root的密码
方法一:shell命令
mysqladmin -u root -p password "123"

2.查看密码存放的表
方法二:mysql数据库命令
mysql>use mysql;
mysql>update user set password=password('123') where user='root' and host='localhost';
mysql> FLUSH PRIVILEGES; #刷新

测试密码修改是否成功

二、修改mysql管理员账号root
update mysql.user set user="admin" where user="root" and host="localhost";
flush privileges;

测试

三、mysql管理员root账号密码遗忘
方法一:
killall -TERM mysqld
mysqld_safe --skip-grant-tables &
mysql -u admin
mysql>update user set password=password('123456') where user='admin' and host='localhost';
mysql> FLUSH PRIVILEGES;
MySQL> quit
重新启动MySQL,使用新密码登录

设置新的密码,并刷新修改

测试,重启mysqld服务用新的密码登录

方法二:
修改/etc/my.cnf
在[Mysqld]下添加:
skip-grant-tables
重启MySQL服务
mysql -u root
mysql>update user set password=password('123') where user='admin' and host='localhost';
mysql> FLUSH PRIVILEGES;
MySQL> quit
修改/etc/my.cnf 删除skip-grant-tables
重新启动MySQL,使用新密码登录

测试
修改/etc/my.cnf 删除skip-grant-tables
重新启动MySQL,使用新密码登录

四、创建数据库用户
方法一:
INSERT INTO user(host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'yuzly', PASSWORD('yuzly'), 'Y', 'Y', 'Y');

方法二:
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'yuzly';

方法三:通过新用户授权创建数据库用户

五、权限管理
本地权限
1.创建一个zhang用户,只给select权限,然后查看权限

2.登录zhang用户,mysql -uzhang -pyuzly测试,创建一个表,下图显示被拒绝,当前账户没有create权限

3.登录管理员账户,给zhangsan账户添加create权限

4.重新登录zhangsan账户,测试是否具有create权限,下图说明具有create权限

5.插入一条数据,下图提示没有insert权限

6.登录管理员账户,给zhangsan账户添加insert权限

7.重新登录zhangsan账户,测试是否具有insert权限,下图说明具有insert权限

8.创建的新用户,默认没有任何权限,下图可以看到创建的用户默认是没有任何权限的

9.登录新创建的用户mysql -uabcd -pyuzly,测试,下图可以看到abcd没有select等权限,用show只能查看mysql系统自带的东西,别的用户创建的数据库等看不到

远程连接权限
1.创建一个账户,赋予远程登录权限
grant all on userdb.* to 'abc'@'10.10.10.200' identified by 'yuzly';
flush privileges;

2.测试,从另一台Linux的Mysql客户端登录验证

3.下图可以看到,abc用户对userdb数据库具有任何权限,但对别的数据库没有任何权限,例如mysql.user

4.远程连接限制一个网段

5.测试

撤销权限
revoke all on userdb.* from 'zhangsan'@'localhost';

测试,撤消zhangsan账户的权限是否生效

删除账户
delete from mysql.user where user="aaa" and host="localhost";

---------------------------------------------------------------------------------------------------
Mysql数据库基础学习笔记:https://www.cnblogs.com/yuzly/p/10582295.html
Linux Mysql数据库安全配置的更多相关文章
- MySQL数据库安全配置
文章来源:http://www.xfocus.net MySQL数据库安全配置 1.前言 MySQL 是完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统.它具 ...
- linux mysql 安装配置
1.确认当前linux系统版本,使用以下命令: cat /etc/issue cat /etc/redhat-release 2.下载对应linux系统的mysql安装包. 下载地址:http://d ...
- linux mysql主从复制配置
1.设置主库master的servie-id值并且开启bin-log功能参数vi /etc/my.cnf修改my.cnf的参数:[mysqld]server-id=1 //每一个库的server-id ...
- linux MySQL安装配置
执行下面的命令初始化授权表: ./scripts/mysql_install_db --user=mysql
- Mysql安全配置
相关学习资料 http://drops.wooyun.org/tips/2245 http://www.cnblogs.com/siqi/archive/2012/11/21/2780966.html ...
- Mysql安全配置【转】
相关学习资料 http://drops.wooyun.org/tips/2245 http://www.cnblogs.com/siqi/archive/2012/11/21/2780966.html ...
- 阿里云服务器Linux CentOS安装配置(三)yum安装mysql
阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...
- Linux下PHP+MYSQL+APACHE配置方法
apache: http://www.apache.org mysql: http://www.mysql.com php: http://www.php.net/downloads.php g ...
- (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记
Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...
随机推荐
- HTTP请求定义不同Content-Type及在SpringMVC如何接收(必看!!!)
前言最近在和三方对接的时候发现了一些问题,这也是我写这篇文章的原因.我大概花了三天时间把这些内容了解,实践,整理,然后分享给大家,希望对大家会有所帮助.废话不多说,在和三方对接的时候我们规定使用jso ...
- 解决Eclipse中无法查看Java源码
1.点 "window"-> "Preferences"-> "Java" -> "Installed JRES ...
- nodejs应用:文件上传
功能:上传文件到服务器,图片支持客户端本地预览. 服务端 //server.js 'use strict';const http = require('http');const url = requi ...
- Python:数据可视化pyecharts的使用
什么是pyecharts? pyecharts 是一个用于生成 Echarts 图表的类库. echarts 是百度开源的一个数据可视化 JS 库,主要用于数据可视化.pyecharts 是一个用于生 ...
- 初探WebAssembly
1.前言 参加完2018年上海的QCon大会,想到了会议中来自Microsoft的朱力旻大佬讲的WebAssembly,感触颇深. 我之前完全没有了解过WebAssembly,之前没有了解的原因也很简 ...
- 痞子衡嵌入式:语音处理工具Jays-PySPEECH诞生记(3)- 音频显示实现(Matplotlib, NumPy1.15.0)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是语音处理工具Jays-PySPEECH诞生之音频显示实现. 音频显示是Jays-PySPEECH的主要功能,Jays-PySPEECH借 ...
- python迭代和解析(3):range、map、zip、filter和reduce函数
解析.迭代和生成系列文章:https://www.cnblogs.com/f-ck-need-u/p/9832640.html range range()是一个内置函数,它返回一个数字序列,功能和Li ...
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【业务逻辑】
前言 该篇主要实现秒杀业务层,秒杀业务逻辑里主要包括暴露秒杀接口地址.实现秒杀业务逻辑.同时声明了三个业务类:Exposer.SeckillExecution.SeckillResult. Expos ...
- ajax跨域请求,亲测有效
跨域请求域有两种常用解决方案,jsonp和cors, 因为jsonp只能解决get请求问题,我这里用的是cors方法. js前端ajax请求: $.ajax({ url: "http://1 ...
- Elasticsearch.net项目实战
elasticsearch.net项目实战 目录 Elasticsearch+kibana 环境搭建 windows 10环境配置 安装Elasticsearch head安装(非必需) 安装kiba ...