佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Linux下二進制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟

Linux下二進制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟

熱門標簽:網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 呼叫中心市場需求 鐵路電話系統(tǒng) AI電銷 百度競價排名 Linux服務(wù)器 服務(wù)外包

本文主要介紹MySQL二進制軟件包的安裝/啟動/關(guān)閉過程。

也許有人要問為什么要選擇二進制的安裝方式呢?

其實答案很簡單,官方版本中已經(jīng)把所有功能都配置好了,我們可以很方便地拿來使用。

官方MySQL有四個版本:GA版本、DMR版本、RC版本和Beta版本。一般情況下,生產(chǎn)環(huán)境或者測試環(huán)境都

選擇GA版本(常規(guī)可用的版本,經(jīng)過bug修復(fù)測試過)。

下載地址: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、安裝前系統(tǒng)環(huán)境檢測

不管是MySQL哪個版本的安裝,為了可以很順利地把MySQL數(shù)據(jù)庫安裝好,做好后期數(shù)據(jù)庫的優(yōu)化工作,在前期進行Linux的系統(tǒng)檢測是十分有必要的。

1.1、selinux和iptables需要關(guān)閉,把SELINUX=disabled,改完重啟服務(wù)器生效。

我這里沒有iptables用的是firewall所以不用關(guān)閉iptables

1.2、I/O調(diào)度系統(tǒng)默認是cfq模式,這里強烈建議使用deadline模式

查看I/O調(diào)度文件:

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

1.3、swap分區(qū)的設(shè)置

swpapiness值的大小對如何使用swap分區(qū)有著很大的影響。

它有0和100兩個極限值,0代表最大限度地使用物理內(nèi)存,然后才使用swap分區(qū),這種行為很有可能導(dǎo)致系統(tǒng)內(nèi)存溢出,出現(xiàn)OOM的錯誤,從而導(dǎo)致MySQL被意外kill掉,所以需要謹慎設(shè)置。

100則是積極地使用swap分區(qū),并且把內(nèi)存上面的數(shù)據(jù)及時搬到swap分區(qū)里(不建議)。這里建議大家不分配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、文件系統(tǒng)的選擇

這里建議使用xfs文件系統(tǒng),相比ext4,它更方便管理,支持動態(tài)擴容,刪除文件也很方便。

1.5、操作系統(tǒng)的限制

先來查看一些當前操作系統(tǒng)的限制情況,使用ulimit -a查看:

這里標記了兩個最為重要的參數(shù),一個叫open files,另一個叫max user processes。

open files如果設(shè)置不合理,而當前服務(wù)器的連接過多或者表過多時,就有可能會出現(xiàn)打不開表或者訪問不了表的現(xiàn)象。

默認情況下,Linux最大句柄數(shù)為1024個,表示單個進程最多可以訪問1024個文件句柄。如要超過默認值,就會出現(xiàn)文件句柄超限的錯誤”too many open files“。

max user processes參數(shù)的用途:有時候我們可能會跑很多實例,但是發(fā)現(xiàn)創(chuàng)建不了新的連接,報出“resource temporarily unavailable”的錯誤,表示沒有足夠的資源。

為了防止以上兩種報錯情況,我們可以修改系統(tǒng)的軟硬限制。編輯/etc/security/limits.conf,加入限制的相關(guān)內(nèi)容。記得更改完內(nèi)容之后,需要重啟操作系統(tǒng)才能生效。

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

1.6、numa需要關(guān)閉

簡單來講關(guān)閉numa功能,可以更好地分配內(nèi)存,不需要采用swap的方式來獲取內(nèi)存。

因為有經(jīng)驗的系統(tǒng)管理員和DBA都知道使用swap導(dǎo)致的數(shù)據(jù)庫性能下降有多么的惡心。

關(guān)閉方式也分在BIOS、操作系統(tǒng)中關(guān)閉,或者是在數(shù)據(jù)庫啟動過程中關(guān)閉。

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

2、MySQL5.7版本安裝過程

檢查完操作系統(tǒng)環(huán)境后,進入MySQL安裝階段,總結(jié)為“三部曲+一步走”的方式。

2.1、第一部曲

創(chuàng)建MySQL用戶,指定MySQL所在的用戶組,命令如下:

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

軟件包的家目錄(basedir)我這邊是習(xí)慣統(tǒng)一放在/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目錄授權(quán):

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

2.2、第二部曲

創(chuàng)建MySQL數(shù)據(jù)庫的數(shù)據(jù)目錄(datadir),這里可以選擇創(chuàng)建在/mysql/下面:

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

也要對數(shù)據(jù)目錄授權(quán):

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

2.3、第三部曲

由于是二進制的安裝方式,這里的數(shù)據(jù)庫配置文件需要自己配置好,到此完成最后一部曲

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

密碼:tse

2.4、最后一步

mysqld命令初始化數(shù)據(jù)庫:

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

注:如果在初始化過程中加上--initialize參數(shù),表示會生成一個臨時的數(shù)據(jù)庫初始化密碼,

記錄在log-error(錯誤日志)里面,如果加上--initialize-insecure參數(shù),代表無密碼進入。建議使用生成初始化密碼的方式!

啟動數(shù)據(jù)庫的過程:

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

數(shù)據(jù)庫啟動成功之后,進入數(shù)據(jù)庫的初始化密碼會在/mysql/logs/error.log下面:

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

使用初始化密碼進入數(shù)據(jù)庫之后,需要修改數(shù)據(jù)庫root密碼,設(shè)置為永不過期:

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

以上就是MySQL5.7版本的安裝啟動方式和系統(tǒng)優(yōu)化的部分優(yōu)化說明。

總結(jié)

以上所述是小編給大家介紹的Linux下二進制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • mysql 8.0.24版本安裝配置方法圖文教程
  • MySQL8.0.24版本Release Note的一些改進點
  • mysql的MVCC多版本并發(fā)控制的實現(xiàn)
  • MySQL8.0.23版本的root密碼重置最優(yōu)解法
  • 關(guān)于MyBatis連接MySql8.0版本的配置問題
  • 解決seata不能使用mysql8版本的問題方法
  • 詳解DBeaver連接MySQL8以上版本以及解決可能遇到的問題
  • IDEA使用mybatis-generator及配上mysql8.0.3版本遇到的bug
  • MySQL5.x版本亂碼問題解決方案
  • CentOS7版本安裝Mysql8.0.20版本數(shù)據(jù)庫的詳細教程
  • Mysql5.7及以上版本 ONLY_FULL_GROUP_BY報錯的解決方法
  • 解決mysql8.0.19 winx64版本的安裝問題
  • django2.2 和 PyMySQL版本兼容問題
  • mysql 8.0.18各版本安裝及安裝中出現(xiàn)的問題(精華總結(jié))
  • 超詳細教你怎么升級Mysql的版本

標簽:湘潭 蘭州 仙桃 湖南 黃山 崇左 衡水 銅川

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Linux下二進制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    南乐县| 万盛区| 南充市| 阜新| 泽普县| 白玉县| 英德市| 尉氏县| 新巴尔虎左旗| 莱芜市| 河池市| 巩义市| 贡觉县| 东宁县| 惠安县| 顺平县| 普陀区| 老河口市| 宜兰市| 陵川县| 桐庐县| 广州市| 大邑县| 黄平县| 上思县| 噶尔县| 耿马| 元朗区| 松潘县| 灵山县| 金山区| 仁怀市| 定安县| 余江县| 乌兰县| 无棣县| 财经| 揭阳市| 江油市| 萨嘎县| 尼勒克县|