手机版
你好,游客 登录 注册
背景:
阅读新闻

MariaDB数据库的安装、性能优化和安全

[日期:2016-10-26] 来源:Linux社区  作者:chszs [字体: ]

数据库服务器是绝大多数应用程序的关键组成部分。如果没有存储、检索、更新和删除数据的能力,那么Web应用和桌面应用的实用性和使用范围会变得非常有限。
此外,知道如何安装、管理和配置数据库服务器,使得数据库的运行达到预期设定,是每个系统管理员必备技能。
在这篇文章中,主要讲述了MariaDB数据库的安装、性能优化和安全。

一、安装MariaDB

CentOS 7.x系统中,MariaDB正式取代了MySQL的地位,预置到系统仓库中。这一点在Ubuntu和openSUSE等系统上也是如此。
要安装MariaDB,执行命令:

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# yum update && yum install mariadb mariadb-server # CentOS 

--------------- On Debian and Ubuntu --------------- 
$ sudo aptitude update && sudo aptitude install mariadb-client mariadb-server 

--------------- On openSUSE --------------- 
# zypper update && zypper install mariadb mariadb-tools # openSUSE

一但MariaDB软件包完成了安装,需要确保数据库服务启动运行,并且能开机自动启动。在CentOS和openSUSE系统都需要手段执行命令才能实现上述需求,而Ubuntu的安装过程可以自动完成这一点。

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# systemctl start mariadb && systemctl enable mariadb 

--------------- On openSUSE --------------- 
# systemctl start mysql && systemctl enable mysql

二、MariaDB的安全加固

完成以上操作后,是时候对MariaDB的安全进行加固了。需要运行mysql_secure_installation脚本。此脚本可以实现:

  • 为数据库root用户设置或重置密码
  • 禁止匿名用户登录
  • 禁止root用户的远程访问,只允许本地localhost访问
  • 删除test数据库(任何人都可以访问的数据库)
  • 激活以上1~4选项

三、配置MariaDB服务器

MariaDB服务器默认的配置文件在这里,注意下面给定的顺序:

/etc/mysql/my.cnf    /etc/my.cnf    ~/.my.cnf

在大多数情况下,只存在/etc/my.cnf配置文件。对于Linux服务器上的用户,可以使用~/.my.cnf配置文件来覆盖这个配置文件。
要注意,在my.cnf配置文件中,每一个节的内容都是由方括号分隔的。
服务器的系统配置在[mysqld]节中给出,下表中的前两行就是其中的内容,余下的都是可选项,可以按自己的需求修改其默认值。
这里写图片描述

在CentOS系统中,还需要告诉SELinux允许MariaDB的监听端口穿透防火墙,然后重启服务。

# yum install policycoreutils-Python
# semanage port -a -t mysqld_port_t -p tcp 20500

四、MariaDB性能优化

最简单、最方便的MariaDB性能优化技巧,就是使用mysqltuner工具。mysqltuner其实是一个脚本,它可以扫描数据库服务器,并提出性能和稳定性方面的改进建议。
要安装mysqltuner:

# wget https://github.com/major/MySQLTuner-perl/tarball/master
# tar xzf master

然后进入mysqltuner的解压目录:

# cd major-MySQLTuner-perl-7dabf27

运行mysqltuner:

# ./mysqltuner.pl

mysqltuner输出的报告大致如下:
这里写图片描述

结果报告建议把query_cache_type设置为0,0表示禁用,1表示启用。
那么为什么mysqltuner会建议停用query_cache_type呢?原因是,查询缓存适用于高读/低写的情况,而我们才安装了MariaDB,显然还不具备这种情况。
注意:使用mysqltuner进行调优,并非一次性的工作,每隔一段时间就应该检查一次,做一些调整。

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-10/136409.htm

linux
相关资讯       MariaDB安装 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款