Linux下二进制方式安装mysql5.7版本和系统优化的步骤

本文主要介绍MySQL二进制软件包的安装/启动/关闭过程。

也许有人要问为什么要选择二进制的安装方式呢?

其实答案很简单,官方版本中已经把所有功能都配置好了,我们可以很方便地拿来使用。

官方MySQL有四个版本:GA版本、DMR版本、RC版本和Beta版本。一般情况下,生产环境或者测试环境都

选择GA版本(常规可用的版本,经过bug修复测试过)。

下载地址:https://dev.mysql.com/downloads/mysql/

下载完成以后可以检验一下MD5,我这边之前下载的版本,这边就演示这个命令的使用(md5sum 文件名)

[root@tse2 downloads]# md5sum mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
d903d3dbf235b74059a4b3e216c71161 mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

1、安装前系统环境检测

不管是MySQL哪个版本的安装,为了可以很顺利地把MySQL数据库安装好,做好后期数据库的优化工作,在前期进行Linux的系统检测是十分有必要的。

1.1、selinux和iptables需要关闭,把SELINUX=disabled,改完重启服务器生效。

我这里没有iptables用的是firewall所以不用关闭iptables

1.2、I/O调度系统默认是cfq模式,这里强烈建议使用deadline模式

查看I/O调度文件:

[root@tse2 downloads]# cat /sys/block/sda/queue/scheduler
noop [deadline] cfq 

1.3、swap分区的设置

swpapiness值的大小对如何使用swap分区有着很大的影响。

它有0和100两个极限值,0代表最大限度地使用物理内存,然后才使用swap分区,这种行为很有可能导致系统内存溢出,出现OOM的错误,从而导致MySQL被意外kill掉,所以需要谨慎设置。

100则是积极地使用swap分区,并且把内存上面的数据及时搬到swap分区里(不建议)。这里建议大家不分配swap,或者分配4GB的空间就足够了。

如何查看swappiness文件呢?

[root@tse2 grub2]# cat /proc/sys/vm/swappiness
[root@tse2 grub2]# sysctl -a|grep swap
sysctl: reading key "net.ipv6.conf.all.stable_secret"
sysctl: reading key "net.ipv6.conf.default.stable_secret"
sysctl: reading key "net.ipv6.conf.ens192.stable_secret"
sysctl: reading key "net.ipv6.conf.lo.stable_secret"
vm.swappiness = 30

想要修改swappiness的值,编辑/etc/sysctl.conf,加入vm.swappiness的值即可。

1.4、文件系统的选择

这里建议使用xfs文件系统,相比ext4,它更方便管理,支持动态扩容,删除文件也很方便。

1.5、操作系统的限制

先来查看一些当前操作系统的限制情况,使用ulimit -a查看:

这里标记了两个最为重要的参数,一个叫open files,另一个叫max user processes。

open files如果设置不合理,而当前服务器的连接过多或者表过多时,就有可能会出现打不开表或者访问不了表的现象。

默认情况下,Linux最大句柄数为1024个,表示单个进程最多可以访问1024个文件句柄。如要超过默认值,就会出现文件句柄超限的错误”too many open files“。

max user processes参数的用途:有时候我们可能会跑很多实例,但是发现创建不了新的连接,报出“resource temporarily unavailable”的错误,表示没有足够的资源。

为了防止以上两种报错情况,我们可以修改系统的软硬限制。编辑/etc/security/limits.conf,加入限制的相关内容。记得更改完内容之后,需要重启操作系统才能生效。

[root@tse2 grub2]# vim /etc/security/limits.conf
*        soft  nproc      65535
*        hard  nproc      65535
*        soft  nofile     65535
*        hard  nofile     65535

1.6、numa需要关闭

简单来讲关闭numa功能,可以更好地分配内存,不需要采用swap的方式来获取内存。

因为有经验的系统管理员和DBA都知道使用swap导致的数据库性能下降有多么的恶心。

关闭方式也分在BIOS、操作系统中关闭,或者是在数据库启动过程中关闭。

[root@tse2 bin]# numa --interleave=all /mysql/app/bin/mysqld_safe -defaults-file=/etc/my.conf &

2、MySQL5.7版本安装过程

检查完操作系统环境后,进入MySQL安装阶段,总结为“三部曲+一步走”的方式。

2.1、第一部曲

创建MySQL用户,指定MySQL所在的用户组,命令如下:

[root@tse2 /]# groupadd mysql
[root@tse2 /]# useradd -g mysql mysql -s /sbin/nologin

软件包的家目录(basedir)我这边是习惯统一放在/data/downloads下面:

[root@tse2 downloads]# pwd
/data/downloads

需要解压MySQL软件包,命令如下:

[root@tse2 downloads]# tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz

需要对MySQL目录授权:

[root@tse2 downloads]# chown -R mysql:mysql /mysql

2.2、第二部曲

创建MySQL数据库的数据目录(datadir),这里可以选择创建在/mysql/下面:

[root@tse2 downloads]# mkdir -p /mysql/data

也要对数据目录授权:

[root@tse2 downloads]# chown -R mysql:mysql /mysql/data

2.3、第三部曲

由于是二进制的安装方式,这里的数据库配置文件需要自己配置好,到此完成最后一部曲

my.cnf配置文件下载地址:https://files.cnblogs.com/files/Sungeek/Tsemy.7z

密码:tse

2.4、最后一步

mysqld命令初始化数据库:

[root@tse2 mysql]# /mysql/app/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/mysql/app --datadir=/mysql/data/ --user=mysql -initialize

注:如果在初始化过程中加上--initialize参数,表示会生成一个临时的数据库初始化密码,

记录在log-error(错误日志)里面,如果加上--initialize-insecure参数,代表无密码进入。建议使用生成初始化密码的方式!

启动数据库的过程:

[root@tse2 mysql]# /mysql/app/bin/mysqld_safe --defaults-file=/etc/my.cnf &

数据库启动成功之后,进入数据库的初始化密码会在/mysql/logs/error.log下面:

[root@tse2 logs]# cat /mysql/logs/error.log |grep password

使用初始化密码进入数据库之后,需要修改数据库root密码,设置为永不过期:

/mysql/app/bin/mysql -uroot -p
mysql>SET PASSWORD = '123456';
mysql>ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
mysql>flush privileges

以上就是MySQL5.7版本的安装启动方式和系统优化的部分优化说明。

总结

以上所述是小编给大家介绍的Linux下二进制方式安装mysql5.7版本和系统优化的步骤,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

(0)

相关推荐

  • CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本教程详解

    MySQL 目前的最新版本是 5.7.11,在 Linux 下提供特定发行版安装包(如 .rpm)以及二进制通用版安装包(.tar.gz).一般情况下,很多项目都倾向于采用二进制通用安装包形式来进行安装配置,自定义非常方便.但在安装过程中发现,其实官方提供的安装说明文件太过简单,而且里面的参数还有问题,依照执行后,mysql 服务启动报错,查找了一些资料并反复试验后,自己总结出一套切实可行的安装配置流程,具体如下: 1.下载 MySQL for Linux Generic 二进制版本安装包(.t

  • Linux下Mysql5.6 二进制安装过程

    1.1下载二进制安装包 wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz 1.2创建 mysql用户与组 groupadd -r -g 306 mysql useradd -r -g 306 -u 306 -m -s /sbin/nologin mysql 1.3解压 tar xf mysql-5.6.40-linux-glibc2.12-x86_64.tar

  • 浅谈Linux 二进制包安装MySQL的一些问题

    第一步:安装相关的依赖yum install perl-Data-Dumper 第二步:初始化mysql数据库的内部信息./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data ---------------------------------------------- 二进制包是否可以成功的运行,与先前是否先解决rpm包的依赖无关. 也就是说,就算rpm包安装不上,二进制包还是可以

  • Linux下MySQL5.7.18二进制包安装教程(无默认配置文件my_default.cnf)

    最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5.7.18)二进制包,CentOS7.2下测试安装,方便以后折腾. 大概步骤如下,安装删除反复折腾了几遍,按照以下步骤,应该没啥问题了. 也没有想象中的复杂,大部分步骤都是参考网上的,照做就是了,出错的话,多尝试,多查资料. 操作系统版本 创建mysql组和用户 下载最新版的MySQL 5.7.18二进制包,上传至服务器的usr/local目录下 解压MySQL二进制包 如下是解压之后的,并且重命

  • linux二进制通用包安装mysql5.6.20教程

    我们使用二进制通用包安装MySQL,这个类似于windows下的绿色软件,解压后配置即可使用,下载地址: https://edelivery.Oracle.com/EPD/Search/handle_go 2.将二进制mysql安装文件解压到/usr/local下,这里使用软连接为mysql [root@mysql1 soft]tar xvf mysql-advanced-5.6.20-linux-glibc2.5-x86_64.tar.gz -C /usr/local [root@mysql1

  • Linux下mysql5.6.24(二进制)自动安装脚本

    本文为大家分享了Linux环境下mysql5.6.24自动安装脚本代码,供大家参考,具体内容如下 说明: 一.本脚本仅供测试使用,若正式环境想要使用,需更改脚本的一些参数. 二.使用本脚本之前,需保证linux环境可以联网下载,若不能联网,则需要将下载好的mysql二进制包上传至linux中的/data目录下. 三.脚本使用是需一次输入三个参数: 1.需安装的mysql版本号,如:5.6.24 2.需安装的mysql端口设置,如:3306 3.mysql的server_id设置,如:100330

  • Linux安装MySQL教程(二进制分发版)

    本教程为大家分享了Linux安装MySQL详细步骤,供大家参考,具体内容如下 第一步: 下载MySQL安装包 进入mysql官网,进入download界面,选择自己需要的版本和操作平台,我的电脑是Centos 7.我这里操作系统选择linux Generic,版本选最新.(我觉得选红帽系统应该也行,因为CentOS 本来和红帽就差不多) 你可以在windows环境下载到本地,再复制到linux目录下面,而这里我采用的是:直接在linux下使用以下指令下载 [root@hhh ~]# wget h

  • Linux下二进制方式安装mysql5.7版本和系统优化的步骤

    本文主要介绍MySQL二进制软件包的安装/启动/关闭过程. 也许有人要问为什么要选择二进制的安装方式呢? 其实答案很简单,官方版本中已经把所有功能都配置好了,我们可以很方便地拿来使用. 官方MySQL有四个版本:GA版本.DMR版本.RC版本和Beta版本.一般情况下,生产环境或者测试环境都 选择GA版本(常规可用的版本,经过bug修复测试过). 下载地址:https://dev.mysql.com/downloads/mysql/ 下载完成以后可以检验一下MD5,我这边之前下载的版本,这边就演

  • Linux下二进制编译安装MySql centos7的教程

    // 当时我装这个也是折腾了一下午 , 所以写一个笔记记录一下; //如果哪里有问题的话我们可以一起讨论( qq: 2970911340,邮箱+@qq.com),这也是我第一次写博客 练练手 1. 安cmake工具 # yum install -y cmake 2. 创建mysql用户 #useradd -s /sbin/nologin mysql  //设置为非登陆用户(安全) 3. 创建数据目录,该目录是用于数据库初始化时生成的库.表.日志等,不要直接在该目录下存放东西 # mkdir -p

  • CentOS6.5下RPM方式安装mysql5.6.33的详细教程

    1.mysql下载 下载地址:https://dev.mysql.com/downloads/mysql/5.6.html<br>下载以下安装包: MySQL-client-5.6.33-1.el6.x86_64.rpm MySQL-devel-5.6.33-1.el6.x86_64.rpm MySQL-server-5.6.33-1.el6.x86_64.rpm 2.查看是否已经安装了mysql,有则移除 rpm -qa|grep -i mysql mysql-libs-5.1.66-2.e

  • linux下源码安装mysql5.6.20教程

    linux下MySQL 5.6源码安装记录如下 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件包 复制代码 代码如下: yum -y install  gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake 3.编

  • linux下使用RPM安装mysql5.7.17

    linux下MySQL5.7 rpm安装方式记录,供大家参考,具体内容如下 删除旧包: # rpm -qa | grep -i mysql # rpm -ev mysql-libs-* --nodeps 安装rpm包: # rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm # rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm # rpm -ivh mysql-community

  • Linux下rpm方式安装mysql教程

    每次安装总是有些不同,这次用这种方式尝试一下,也记录一下. 1.首先需要去下载rpm包: 镜像地址:http://mysql.mirrors.pair.com/Downloads/ 根据不同的版本选择下载即可,我下载的是: MySQL-server-5.6.20-1.el6.i686.rpm MySQL-client-5.6.20-1.el6.i686.rpm MySQL-devel-5.6.20-1.el6.i686.rpm(这个包备用) 因为采用rpm方式安装mysql的话,那么只安装好my

  • CentOS下RPM方式安装MySQL5.6教程

    之前的项目全都在windows系统环境下部署的,这次尝试在Linux系统环境下部署,于是这次我们组织在7台主机上安装了JDK.Maven.Jboss其中一台安装了Mysql,并将局域网配置好,终于大功告成了.下面将安装步骤与大家分享! 系统版本:centos6.3-i386 32位操作系统     硬件配置:内核 Intel(R) Pentium(R) 4 CPU 3.00GHz 内存998.5M      安装环境:使用shell 命令 此次安装在桌面环境下,使用shell命令进行安装,下载安

  • 二进制方式安装 Kubernetes1.18.3版本实现脚本

    目录 一.Kubernetes 简介 1.Kubernetes 架构设计图 2.Kubernetes 常见组件介绍 二.Kubernetes 二进制方式安装 1.创建 CA 证书和密钥 2.安装 ETCD 组件 1)创建 ETCD 证书和密钥 2)生成证书和密钥 3)创建启动脚本 4)启动 ETCD 3.安装 Flannel 网络插件 1)创建 Flannel 证书和密钥 2)生成证书和密钥 3)编写启动脚本 4)启动并验证 4.安装 Docker 服务 1)创建启动脚本 2)启动 Docker

  • 解析windows下使用命令的方式安装mysql5.7的方法

    解压zip压缩包,创建my.ini文件内容如下 这里注意一下sql_mode 这里写的是让MySQL使用习惯类似Oracle,具体哪些什么意思大家很容易百度查到 [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] sql_mode='NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO

  • RPM方式安装MySQL5.6源码

    RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称) [root@localhost ~]# rpm -qa | grep -i mysql mysql-libs-5.1.66-2.el6_3.x86_64 [root@localhost ~]# yum -y remove mysql-libs* b. 下载Linux对应的RPM包,如:CentOS6.4_64对应的RPM包,如下: [root@localhost rpm]# l

随机推荐