服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|

服务器之家 - 服务器系统 - Centos - 在CentOS上安装Percona服务器的方法

在CentOS上安装Percona服务器的方法

2019-09-11 17:13开源中文社区Carlos Alberto Centos

这篇文章主要介绍了在CentOS上安装Percona服务器的方法,Percona服务器上集成了基于MySQL的强大数据库支持功能,需要的朋友可以参考下

在这篇文章中我们将了解关于 Percona 服务器,一个开源的MySQL,MariaDB的替代品。InnoDB的数据库引擎使得Percona 服务器非常有吸引力,如果你需要的高性能,高可靠性和高性价比的解决方案,它将是一个很好的选择。

在下文中将介绍在CentOS 7上 Percona 服务器的安装,以及备份当前数据,配置的步骤和如何恢复备份。
1.什么是Percona,为什么使用它

Percona是一个MySQL,MariaDB数据库的开源替代品,它是MySQL的一个分支,相当多的改进和独特的功能使得它比MYSQL更可靠,性能更强,速度更快,它与MYSQL完全兼容,你甚至可以在Oracle的MySQL与Percona之间使用复制。
在Percona中独具特色的功能

    分区适应哈希搜索
    快速校验算法
    缓冲池预加载
    支持FlashCache

MySQL企业版和Percona中的特有功能

    从不同的服务器导入表
    PAM认证
    审计日志
    线程池

现在,你肯定很兴奋地看到这些好的东西整合在一起,我们将告诉你如何安装和对Percona Server做基本配置。
2. 备份你的数据库

接下来,在命令行下使用SQL命令创建一个mydatabases.sql文件,来重建或恢复salesdb和employeedb数据库,根据你的设置替换数据库名称,如果没有安装MySQL则跳过此步:

 

复制代码
代码如下:
mysqldump -u root -p --databases employeedb salesdb > mydatabases.sql

 

复制当前的配置文件,如果你没有安装MYSQL也可跳过:

 

复制代码
代码如下:
cp my.cnf my.cnf.bkp

 

3.删除之前的SQL服务器

停止MYSQL/MariaDB,如果它们还在运行:

 

复制代码
代码如下:
systemctl stop mysql.service

 

卸载MariaDB和MYSQL:

 

复制代码
代码如下:
yum remove MariaDB-server MariaDB-client MariaDB-shared mysql mysql-server

 

移动重命名放在/var/lib/mysql当中的MariaDB文件。这比仅仅只是移除更为安全快速,这就像2级即时备份。:)

 

复制代码
代码如下:
mv /var/lib/mysql /var/lib/mysql_mariadb

 

4.使用二进制包安装Percona

你可以在众多Percona安装方法中选择,在CentOS中使用Yum或者RPM包安装通常是更好的主意,所以这些是本文介绍的方式,下载源文件编译后安装在本文中并没有介绍。

从Yum仓库中安装:

首先,你需要设置Percona的Yum库:

 

复制代码
代码如下:
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm

 

接下来安装Percona:

 

复制代码
代码如下:
yum install Percona-Server-client-56 Percona-Server-server-56

 

上面的命令安装Percona的服务器和客户端、共享库,可能需要Perl和Perl模块,以及其他依赖的需要,如DBI::MySQL。如果这些尚未安装,可能需要安装更多的依赖包。

使用RPM包安装:

我们可以使用wget命令下载所有的rpm包:

 

复制代码
代码如下:
wget -r -l 1 -nd -A rpm -R "*devel*,*debuginfo*" \

http://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-5.5.42-37.1/binary/redhat/7/x86_64/

 

使用rpm工具,一次性安装所有的rpm包:

 

复制代码
代码如下:
rpm -ivh Percona-Server-server-55-5.5.42-rel37.1.el7.x86_64.rpm \
Percona-Server-client-55-5.5.42-rel37.1.el7.x86_64.rpm \
Percona-Server-shared-55-5.5.42-rel37.1.el7.x86_64.rpm

 

注意在上面命令语句中最后的反斜杠'\'(只是为了换行方便)。如果您安装单独的软件包,记住要解决依赖关系,在安装客户端之前要先安装共享包,在安装服务器之前请先安装客户端。
5.配置Percona服务器
恢复之前的配置

当我们从MariaDB迁移过来时,你可以将之前的my.cnf的备份文件恢复回来。

 

复制代码
代码如下:
cp /etc/my.cnf.bkp /etc/my.cnf

 

创建一个新的my.cnf文件

如果你需要一个适合你需求的新的配置文件或者你并没有备份配置文件,你可以使用以下方法,通过简单的几步生成新的配置文件。

下面是Percona-server软件包自带的my.cnf文件

 

复制代码
代码如下:
# Percona Server template configuration</p> <p>[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock</p> <p># Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0</p> <p>[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

 

根据你的需要配置好my.cnf后,就可以启动该服务了:

 

复制代码
代码如下:
systemctl restart mysql.service

 

如果一切顺利的话,它已经准备好执行SQL命令了,你可以用以下命令检查它是否已经正常启动:

 

复制代码
代码如下:
mysql -u root -p -e 'SHOW VARIABLES LIKE "version_comment"'

 

如果你不能够正常启动它,你可以在/var/log/mysql/mysqld.log中查找原因,该文件可在my.cnf的[mysql_safe]的log-error中设置。

 

复制代码
代码如下:
tail /var/log/mysql/mysqld.log

 

你也可以在/var/lib/mysql/文件夹下查找格式为[主机名].err的文件,就像下面这个例子:

 

复制代码
代码如下:
tail /var/lib/mysql/centos7.err

 

如果还是没找出原因,你可以试试strace:

 

复制代码
代码如下:
yum install strace && systemctl stop mysql.service && strace -f -f mysqld_safe

 

上面的命令挺长的,输出的结果也相对简单,但绝大多数时候你都能找到无法启动的原因。
6.保护你的数据

好了,你的关系数据库管理系统已经准备好接收SQL查询,但是把你宝贵的数据放在没有最起码安全保护的服务器上并不可取,为了更为安全最好使用mysqlsecureinstall来安装,这个工具可以帮助你删除未使用的默认功能,并设置root的密码,限制使用此用户进行访问。只需要在shell中执行该命令,并参照屏幕上的说明操作。

 

复制代码
代码如下:
mysql_secure_install

 

7.还原备份

如果您参照之前的设置,现在你可以恢复数据库,只需再用mysqldump一次。

 

复制代码
代码如下:
mysqldump -u root -p < mydatabases.sql

 

恭喜你,你刚刚已经在你的CentOS上成功安装了Percona,你的服务器已经可以正式投入使用;你可以像使用MySQL一样使用它,你的服务器与它完全兼容。
总结

为了获得更强的性能你需要对配置文件做大量的修改,但这里也有一些简单的选项来提高机器的性能。当使用InnoDB引擎时,将innodbfileper_table设置为on,它将在一个文件中为每个表创建索引表,这意味着每个表都有它自己的索引文件,它使系统更强大和更容易维修。

可以修改innodbbufferpool_size选项,InnoDB应该有足够的缓存池来应对你的数据集,大小应该为当前可用内存的70%到80%。

将innodb-flush-method设置为O_DIRECT,关闭写入高速缓存,如果你使用了RAID,这可以提升性能,因为在底层已经完成了缓存操作。

如果你的数据并不是十分关键并且并不需要对数据库事务正确执行的四个基本要素完全兼容,可以将innodbflushlogattrx_commit设置为2,这也能提升系统的性能。

延伸 · 阅读

精彩推荐
  • Centos2T以上硬盘如何安装centos6

    2T以上硬盘如何安装centos6

    本文将为大家具体的介绍2T以上硬盘如何安装centos6的方法,帮你轻松解决大容量硬盘一样可以安装centos6,希望可以帮助到大家...

    蚊子空间2982019-07-04
  • CentosCentos5.如何安装GUI界面?

    Centos5.如何安装GUI界面?

    Centos默认是没有安装GUI界面的,就只是单纯的命令行界面,对于不习惯命令行操作的朋友或许非常的不习惯,那么我们可以为centos安装GUI界面,今天小编以centos5为例为大家带来GUI界面安装的方法;一起去看看吧...

    Centos之家3992019-06-23
  • Centoscentos基础知识扩展

    centos基础知识扩展

    1. 请回答,32位和64位有什么区别呢?什么时候安装32位的,又什么时候安装64位操作系统呢?如何查看系统是32位的还是64位的? 我们所谓的32位、64位指的是CPU的GPRs(General-Purpose Registers,通用寄存器)的数据宽度。64位的cpu较之32位可以进...

    centos之家3642019-07-09
  • CentosCentos下lvm扩容详解

    Centos下lvm扩容详解

    因生产需要对/data目录进行扩容,由原来的90G扩容到190G,增加100G的空间。今天小编为大家带来的是Centos下lvm扩容详解;有需要的朋友可以过来看看...

    www.zzvips.com3782019-06-29
  • CentosCentOS查看各种服务信息命令详解

    CentOS查看各种服务信息命令详解

    今天小编为大家带来的是CentOS查看各种服务信息命令详解;希望可以帮助到大家,有需要的朋友一起去看看吧...

    CentOS之家3272019-06-23
  • Centoslinux系统下Centos中"vim配置"到底有多强大

    linux系统下Centos中"vim配置"到底有多强大

    当我们在linux系统中使用vim编辑器时,总感觉vim编辑器的界面不是太美观,不能让用户使用的舒服,不仅仅页面设置不习惯,没有显示的行号,也没有自动的缩进,页面的背景也不是很好,本文就为大家具体的介绍vim配置问题...

    服务器之家3912019-07-09
  • CentosCentOS7扩展根目录空间操作步骤

    CentOS7扩展根目录空间操作步骤

    一些朋友还不知道如何在CentOS7下扩展根目录空间;下面小编就为大家带来CentOS7扩展根目录空间操作步骤;有需要的朋友可以过来看看...

    centos之家1412019-07-07
  • CentosCentOS7系统安装KDE后显示为中文语言的修改方法

    CentOS7系统安装KDE后显示为中文语言的修改方法

    在CentOS7系统上安装KDE后,默认显示的是英文。如何修改为中文的呢?下面小编将为大家带来...

    CentOS之家2292019-06-10