MySQL数据库的安全配置实操
Jun 07, 2016 pm 04:09 PM以下文章主要是介绍MySQL数据库的安全配置的实际操作的介绍 ,本文例举了相关的实例,当然这些实例都是在MySQL数据库的安全配置的实际操作中经常出现的,如果你是数据库的热捧者。那么下面的文章对于你而言一定很有意义。 关键字: MySQL内核 数据库安全配置
以下文章主要是介绍MySQL数据库的安全配置的实际操作的介绍 ,本文例举了相关的实例,当然这些实例都是在MySQL数据库的安全配置的实际操作中经常出现的,如果你是数据库的热捧者。那么下面的文章对于你而言一定很有意义。
关键字: MySQL内核 数据库安全配置 用户认证模块 密码恢复 存储过程编写 MySQL数据库索引
内容摘要:
由于MySQL是多平台的数据库,它的默认配置要考虑各种情况下都能适用,所以在我们自己的使用环境下应该进行进一步的安全加固。作为一个MySQL的系统管理员,我们有责任维护MySQL数据库系统的数据安全性和完整性。
如果启动MySQL数据库的用户是mysql,那么象如下的目录和文件的是安全的,请注意数据目录及下面的属性:
<ol class="dp-xml"> <li class="alt"><span><span>shell</span><span class="tag">></span><span>ls-l/usr/local/mysql </span></span></li> <li><span>total40 </span></li> <li class="alt"><span>drwxrwxr-x2rootroot4096Feb2720:07bin </span></li> <li><span>drwxrwxr-x3rootroot4096Feb2720:07include </span></li> <li class="alt"><span>drwxrwxr-x2rootroot4096Feb2720:07info </span></li> <li><span>drwxrwxr-x3rootroot4096Feb2720:07lib </span></li> <li class="alt"><span>drwxrwxr-x2rootroot4096Feb2720:07libexec </span></li> <li><span>drwxrwxr-x3rootroot4096Feb2720:07man </span></li> <li class="alt"><span>drwxrwxr-x6rootroot4096Feb2720:07mysql-test </span></li> <li><span>drwxrwxr-x3rootroot4096Feb2720:07share </span></li> <li class="alt"><span>drwxrwxr-x7rootroot4096Feb2720:07sql-bench </span></li> <li><span>drwx------4mysqlmysql4096Feb2720:07var </span></li> <li class="alt"> <span>shell</span><span class="tag">></span><span>ls-l/usr/local/mysql/var </span> </li> <li><span>total8 </span></li> <li class="alt"><span>drwx------2mysqlmysql4096Feb2720:08mysql </span></li> <li><span>drwx------2mysqlmysql4096Feb2720:08test </span></li> <li class="alt"> <span>shell</span><span class="tag">></span><span>ls-l/usr/local/mysql/var/mysql </span> </li> <li><span>total104 </span></li> <li class="alt"><span>-rw-------1mysqlmysql0Feb2720:08columns_priv.MYD </span></li> <li><span>-rw-------1mysqlmysql1024Feb2720:08columns_priv.MYI </span></li> <li class="alt"><span>-rw-------1mysqlmysql8778Feb2720:08columns_priv.frm </span></li> <li><span>-rw-------1mysqlmysql302Feb2720:08db.MYD </span></li> <li class="alt"><span>-rw-------1mysqlmysql3072Feb2720:08db.MYI </span></li> <li><span>-rw-------1mysqlmysql8982Feb2720:08db.frm </span></li> <li class="alt"><span>-rw-------1mysqlmysql0Feb2720:08func.MYD </span></li> <li><span>-rw-------1mysqlmysql1024Feb2720:08func.MYI </span></li> <li class="alt"><span>-rw-------1mysqlmysql8641Feb2720:08func.frm </span></li> <li><span>-rw-------1mysqlmysql0Feb2720:08host.MYD </span></li> <li class="alt"><span>-rw-------1mysqlmysql1024Feb2720:08host.MYI </span></li> <li><span>-rw-------1mysqlmysql8958Feb2720:08host.frm </span></li> <li class="alt"><span>-rw-------1mysqlmysql0Feb2720:08tables_priv.MYD </span></li> <li><span>-rw-------1mysqlmysql1024Feb2720:08tables_priv.MYI </span></li> <li class="alt"><span>-rw-------1mysqlmysql8877Feb2720:08tables_priv.frm </span></li> <li><span>-rw-------1mysqlmysql428Feb2720:08user.MYD </span></li> <li class="alt"><span>-rw-------1mysqlmysql2048Feb2720:08user.MYI </span></li> <li><span>-rw-------1mysqlmysql9148Feb2720:08user.frm </span></li> </ol>
如果这些文件的属主及属性不是这样,请用以下两个命令修正之:
<ol class="dp-xml"> <li class="alt"><span><span>shell</span><span class="tag">></span><span>chown-Rmysql.mysql/usr/local/mysql/var </span></span></li> <li> <span>shell</span><span class="tag">></span><span>chmod-Rgo-rwx/usr/local/mysql/var </span> </li> </ol>
用root用户启动远程服务一直是安全大忌,因为如果服务程序出现问题,远程攻击者极有可能获得主机的完全控制权。MySQL从3.23.15版本开始时作了小小的改动,默认安装后服务要用mysql用户来启动,不允许root用户启动。
如果非要用root用户来启动,必须加上--user=root的参数(./safe_mysqld --user=root &)。因为MySQL中有LOAD DATA INFILE和SELECT ... INTO OUTFILE的SQL语句,如果是root用户启动了MySQL服务器,那么,MySQL数据库用户就拥有了root用户的写权限。不过MySQL还是做了一些限制的,比如LOAD DATA INFILE只能读全局可读的文件,SELECT ... INTO OUTFILE不能覆盖已经存在的文件。

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

How to optimize MySQL query performance in PHP?

How to use MySQL backup and restore in PHP?

How to insert data into a MySQL table using PHP?

How to fix mysql_native_password not loaded errors on MySQL 8.4

How to use MySQL stored procedures in PHP?

How to create a MySQL table using PHP?

Detailed introduction of Samsung S24ai functions

Detailed tutorial on establishing a database connection using MySQLi in PHP
