MySQL的安全设定
2019独角兽企业重金招聘Python工程师标准>>>
基于linux系统的安装,可以允许安全安装脚本来设定安全设置。
mysql_secure_installation.sh,主要的作用是设定root帐户的密码和删除匿名帐户。运行该脚本,mysqld必须处于运行状态。最终只有一个root帐户,并且只能通过localhost进行访问。可以添加其他的账户。
l 设置root帐户的密码
l 只允许localhost使用root账户登陆
l 删除匿名帐户
l 删除test数据库
不要手动的去修改mysql中的user表中的数据,使用命令管理命令去修改表中的数据。
修改MySQL的root用户的密码方式:(注意不是系统的root用户)
使用set password语句
使用root用户登录到MySQL,然后用set password 为user表中的每个root用户设定密码,注意密码要用PASSWORD()来进行加密。
Set password for ‘root’@’localhost’ = password(‘new-password’); set password for ‘root’@’%’= password(‘new-password’); |
update statement
在使用SQL的DML语句进行更新密码是,一定要使用password函数进行加密
Update user set password=password(‘newpwd’) where user=’root’; Flush privileges; 如果不使用FLUSH PRIVILEGES,只能在下次启动系统时,update的作用才会体现出来。 |
mysqladmin command-line client program
Shell>mysqladmin –u root password “newpwd”; Shell>mysqladmin –u root –h hostname password “newpwd” 注意:’root’@’127.0.0.1’不能使用mysqladmin来设定密码,用前两种方式 |
给匿名【Anonymous】用户设定密码
什么是匿名用户,就是在mysql.user中user为空,但host不为空的那些用户,也就是linux上存在的任何一个用户。
用mysql的用户root登录,执行以下的命令: 方法1) Mysql>set password for ‘’@’localhost’=password(‘newpwd’); Mysql>set password for ‘’@’%‘ = password(‘newpwd’); 方法2 Mysql>update user set password=password(‘newpwd’) where user=’’; Mysql>flush privileges; |
删除用户
Mysql> drop user ‘’@’localhost’; Mysql> drop user ‘’@’%’; Mysql> drop user ‘username’@’hostname’; |
控制数据库的安全,比如test数据库
主要是通过修改mysql.db来达到控制数据库的安全设定的。
Delete from db where db=’test\_%’;
Flush privileges;
添加数据库的用户
有两种方式来添加数据库的用户。
用create user 或者 grant 语句。
直接使用insert,update,delete语句操作mysql.user表
Mysql> create user ‘cmwin’@’%’ identified by ‘cmwin’; Mysql> grant all privileges on *.* to ‘cmwin’@’%’ with grant option;或者 Mysql> grant select,insert,update,delete,create,drop on test.* to ‘cmwin’@’%’; Show grants for ‘cmwin’@’localhost’; |
转载于:https://my.oschina.net/u/1453451/blog/501393
MySQL的安全设定相关推荐
- mysql int 默认值 0,mysql默认值设定
default value 一定要是一个常量,不能使一个函数或者是表达式,那么这就意味着你不能给一个date 类型的列 设置像CURRENT_DATE NOW() CURRENT_TIMESTAMP这 ...
- MySQL表名的大小写敏感设定
MySQL的Table名大小写敏感是使用lower_case_table_names进行的控制,由于版本和安装的OS不同导致缺省动作不同,所以会产生此问题. 问题描述 MacOS上安装的MySQL,目 ...
- MySQL两主多从,且故障转移配置
一.角色划分 1.MySQL数据库规划 主机名 IP地址 角色 mysql_server_id weiliaodb1 192.168.1.233 master1 1 weiliaodb2 192.16 ...
- MySQL的安装配置(win7 64-bit)
MySQL的安装配置(win7 64-bit) 转,整理. MySQL 版本是 mysql-noinstall-5.1.66-winx64.zip(免安装版) mysql-workbench-gpl- ...
- mysql备份数据库语句6_13.4 MySQL用户管理;13.5 常用sql语句;13.6 MySQL数据库备份恢复...
扩展 : SQL语句教程 什么是事务?事务的特性有哪些? 根据binlog恢复指定时间段的数据 mysql字符集调整 使用xtrabackup备份innodb引擎的数据库 innobackupex ...
- 没有找到mysql。sock_linux系统安装mysql数据库
1.首先关闭linux的防火墙,执行命令 chkconfig iptables off 2.从mysql官网上下载自己适合的mysql版本https://dev.mysql.com/downloads ...
- 一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx、supervisor、mysql环境搭建...
作为.neter,看到.net core 2.0的正式发布,心里是有点小激动的,迫不及待的体验了一把,发现速度确实是快了很多,其中也遇到一些小问题,所以整理了一些学习笔记: 阅读目录 环境说明 安装C ...
- Mysql的实用语法
mysql是最基本的数据库,对于非数据库的开发人员来说,如何使用和查询等基本操作是了解和应用masql的基础,就mysql的操作作了一些实用的笔记: SELECT VERSION(), CURRENT ...
- mysql删除端口配置文件,linux中的Mysql的安装、重置安装密码、修改权限详解
安装: 1.安装查看有没有安装过: yum list installed MySQL* rpm -qa | grep mysql* 查看有没有安装包: yum list mysql* 安装mysql客 ...
最新文章
- Linux 工程师的6类好习惯和23个教训
- 手机上图片信息怎么拉一个矩形框_跟着黑鲨手机发布会学习PPT制作
- python对文件夹内文件去重
- SAP CRM和Hybris里的Product Variant
- 大楼通信综合布线系统_系统梳理一下综合布线系统的方方面面
- 系统中异常公共处理模块 in spring boot
- python 删除csv第一行_python 标准库学习之 csv
- python下的selenium和PhantomJS
- 作为技术人为什么想创业
- 安卓ashmem(匿名共享内存映射)学习native篇
- block和代理小结
- js jquery select 操作 获取值,选中选项,增加,修改,删除
- Docker镜像与容器的常用操作
- oracle分页查询最常用的,常用的数据库分页查询语句
- 数据分类分级 数据识别-实现部分敏感数据识别
- iOS NSFileManager文件管理(沙盒)
- python 实现贷款计算
- 运用CSS写出旋转的立方体
- 转载:Ajax控件视频教程下载地址
- 一个大一程序员的反思