暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
MySQL安全配置详解
1370
8页
18次
2020-03-20
5墨值下载
资源由 www.eimhe.com 美河学习在线收集分享
MySQL 安全配置详解
MySQL 是一个真正的多用户、多线程 SQL 数据库服务器,它是一个客户/服务
器结构的实现。MySQL 是现在流行的关系数据库中其中的一种,相比其它的数据
库管理系统(DBMS)来MySQL 具有小巧能齐询迅等优
MySQL 主要目标是快速、健壮和易用。目前,在大中型企业中已经得到了较好的
运用,但是由于它是多平台的数据库,可避免的默认配置也是适合多种情况的需
求,因此需要用户需要在自定义的环境下对 MySQL 的使用进行加固。
假如软件本身有严重安全问题,即使安全配置做的更好,也没有用。因此要首先了解 MySQL
的版本。关于 MySQL 的版本,在 MySQL 官方文档中是这么描述的:
MySQL 5.5 是最新开发的发布系列,是将执行新功能的系列。不久的将来可以使用 Alpha
发行,以便感兴趣的用户进行广泛的测试
MySQL 5.1 是当前稳定(产品质量)布系列。只针对漏洞修复重新发布;没有增加会影
稳定性的新功能
MySQL 5.0 是前一稳定(产品质量)布系列。只针对严重漏洞修复和安全修复重新发布
没有增加会影响该系列的重要功能。
MySQL 4.0 3.23 是旧的稳定(品质量)布系列。该版本不再使用,新的发布只用来
修复特别严重的漏洞(以前的安全问题)
Mysql 开发组织不认为有完全的冻结版,因为任何版本均需要对漏洞进行修复和其它修复。
对于某种程度的冻结他们是指他们可以在产品发布中增加一些不会影响当前工作的小东
西。当然,前一系列的相关漏洞修复会移植到后面的系列。
根据官方的建议至目前为止,推荐使用目前的稳定版本 MySQL 5.1如果你正在运行一个
老的系统并且想要升级,但是又不想冒险进行非无缝升级,应该升级到最新版本中你正使用
的相同的发布系列(只有版本号的最后部分比你使用的新,例 5.0 5.1 为同一系列)
一、MySQL 安装
MySQL 可以在 redhat 环境下进行 RPM 安装和 debian apt 安装,但是最新的包一般都是源
码的形式,因此这里选择源码编译安装的方式。
首先登陆官方网 http://www.mysql.com,下载最新的 released 版本。
# tar zxf mysql-5.1.22-rc-linux-i686-glibc23.tar.gz
mysql 的运行建立 mysql 用户和 mysql 用户组
#groupadd mysql
# useradd -g mysql mysql
# ./configure --prefix=/usr/local/mysql
#make
#make install
# cp support-files/my-medium.cnf /etc/my.cf
# bin/mysql_install_db --user=mysql // mysql 生成初始数据库,出现类似 thank for using
资源由 www.eimhe.com 美河学习在线收集分享
mysql 证明初始化数据库成功。
# chown -R root . //当前目录给 root
# chown -R mysql var //var mysql,这个很重要,也是安全起见
# chgrp -R mysql .
# bin/mysqld_safe --user=mysql &
#bin/mysql u root
此时安全完毕,但是最重要是对 MySQL 进行安全配置,检查你的系统,基本要做到以下
配置。
二、MySQL 安全配置
数据库作为数据管理的平台,它的安全性首先由系统的内部安全和网络安全两部分来决定。
对于系统管理员来说,首先要保证系统本身的安全,在安装 MySQL 数据库时,需要对基础
环境进行较好的配置。
1、修改 root 用户口令,删除空口令
缺省安装的 MySQL root 用户是空密码的了安全起见,必须修改为强密码,所谓的强
密码,至少 8 位,由字母、数字和符号组成的不规律密码。使用 MySQL 自带的命令 mysaladmin
修改 root 密码,同时也可以登陆数据库,修改数据库 mysql 下的 user 表的字段内容,修改
方法如下所示:
# /usr/local/mysql/bin/mysqladmin -u root password “upassword” //使用 mysqladmin
#mysql> use mysql;
#mysql> update user set password=password('upassword') where user='root';
#mysql> flush privileges; //强制刷新内存授权表,否则用的还是在内存缓冲的口令
2、删除默认数据库和数据库用户
一般情况下,MySQL 数据库安装在本地并且也只需要本地的 php 脚本对 mysql 进行读取,
所以很多用户不需要,尤其是默认安装的用户。MySQL 初始化后会自动生成空用户和 test
库,进行安装的测试这会对数据库的安全构成威胁,有必要全部删除,最后的状态只保留
单个 root 即可,当然以后根据需要增加用户和数据库。
#mysql> show databases;
#mysql> drop database test; //删除数据库 test
#use mysql;
#delete from db; //删除存放数据库的表信息,因为还没有数据库信息。
#mysql> delete from user where not (user='root') ; // 删除初始非 root 的用户
#mysql> delete from user where user='root' and password=''; //删除空密码的 root
尽量重复操作
Query OK, 2 rows affected (0.00 sec)
#mysql> flush privileges; //强制刷新内存授权表。
of 8
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜