真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MySQL8.0二進(jìn)制免編譯包安裝部署過程-創(chuàng)新互聯(lián)

下文主要給大家?guī)鞰ySQL8.0二進(jìn)制免編譯包安裝部署過程,希望這些內(nèi)容能夠帶給大家實(shí)際用處,這也是我編輯MySQL8.0二進(jìn)制免編譯包安裝部署過程這篇文章的主要目的。好了,廢話不多說,大家直接看下文吧。

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、博州網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為博州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

一、背景介紹

目前官網(wǎng)MySQL有四個(gè)版本,分別為GA版本、DMR版本、RC版本、Beta版本。一般情況下生產(chǎn)環(huán)境或者測(cè)試環(huán)境我們推薦使用GA版本,因?yàn)檫@個(gè)版本基本上所有功能都經(jīng)過bug測(cè)試通過。

二、部署準(zhǔn)備

  1. 實(shí)驗(yàn)環(huán)境的操作系統(tǒng)
    `[root@localhost ~]# cat /etc/redhat-release

    CentOS Linux release 7.5.1804 (Core)`

2.關(guān)閉SELinux

`vi /etc/sysconfig/selinux

 SELINUX=disabled`

3.關(guān)閉系統(tǒng)防火墻iptables
service iptables stop
iptables -F
iptables -X
iptables -Z
4.重啟機(jī)器reboot
5.查看Centos7.x下IO支持的調(diào)度算法
dmesg |grep -i scheduler
MySQL8.0二進(jìn)制免編譯包安裝部署過程
可以看到Centos7.x默認(rèn)支持的是deadline算法,而一般會(huì)在SSD固態(tài)硬盤環(huán)境中使用noop算法,在centos7.x上建議使用deadline模式
注:Centos7.x調(diào)整I/O Scheduler系統(tǒng)優(yōu)化:https://www.zhangfangzhou.cn/centos-io-scheduler.html

6.swap分區(qū)的設(shè)置,swappiness值的大小建議都不要設(shè)置0和100,對(duì)wappiness數(shù)值大小解釋如下:
如果系統(tǒng)內(nèi)存夠大,那么不應(yīng)該讓 linux 太多使用swap分區(qū), 可以通過修改swappiness的數(shù)值。
當(dāng)swappiness為0的時(shí)候表示大限度使用物理內(nèi)存,然后才是 swap空間;
當(dāng)swappines為100的時(shí)候,則表示積極的使用swap分區(qū),并且把內(nèi)存上的數(shù)據(jù)及時(shí)的搬運(yùn)到swap空間里面。

在CentOS、Red Hat、ubuntu等系統(tǒng)中,swappiness的默認(rèn)值都為60
如果Linux云服務(wù)器的內(nèi)存很小,比如說低于4G,那么可以不用更改這個(gè)值,因?yàn)楫吘箍紤]到內(nèi)存不夠用而去借用swap的情況。
而相對(duì)于很多云服務(wù)器來說,目前還是建議設(shè)置在值為25以下,如果超過了8G內(nèi)存,而且目前內(nèi)存使用量還有剩余的話,建議直接將swappiness改成0,這樣可以大限度的使用物理內(nèi)存,減少硬盤的負(fù)載,同時(shí)加快速度。也避免在使用Memcached的時(shí)候出現(xiàn)"memcached timeout error because of slow response"這樣的錯(cuò)誤。

關(guān)于swappiness操作相關(guān)的命令

查看swappiness當(dāng)前設(shè)置的值:
[root@liulei ~]# cat /proc/sys/vm/swappiness
30
修改swappiness的值:比如設(shè)置swappiness值為10
臨時(shí)修改方案:
#sysctl vm.swappiness=10
vm.swappiness = 10
#cat /proc/sys/vm/swappiness
10
說明:采用臨時(shí)修改方案,如果我們重啟了系統(tǒng),配置會(huì)失效.
永久修改方案:
在/etc/sysctl.conf 文件里添加如下參數(shù):
vm.swappiness=10
或者:
#echo 'vm.swappiness=10'>> /etc/sysctl.conf

7.文件系統(tǒng)的選擇,建議使用xfs文件系統(tǒng),與ext4文件相比,它更方便管理、且支持動(dòng)態(tài)擴(kuò)容和方便刪除文件
8.操作系統(tǒng)的限制,可以修改系統(tǒng)的軟硬件限制來防止系統(tǒng)錯(cuò)誤的發(fā)生。
編輯/etc/security/limits.conf,加入限制內(nèi)容
MySQL8.0二進(jìn)制免編譯包安裝部署過程
9.關(guān)閉numa,讓CPU可以更好利用內(nèi)存

三、MySQL8.0部署配置詳解

說明:mysql二進(jìn)制安裝包下載地址
https://dev.mysql.com/downloads/mysql/
MySQL8.0二進(jìn)制免編譯包安裝部署過程

  1. 創(chuàng)建MySQL用戶和用戶組
    groupadd mysql
    useradd -g mysql mysql -s /sbin/nologin
    2.把軟件包解壓到MySQL的家目錄/usr/local下
    tar -xvf mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz  -C /usr/local/
    3.做軟連接并賦予權(quán)限,執(zhí)行如下命令:
    [root@localhost ~]# ln -s /usr/local/mysql-8.0.12-linux-glibc2.12-x86_64 mysql
    MySQL8.0二進(jìn)制免編譯包安裝部署過程
    chown mysql:mysql -R mysql
    4.創(chuàng)建MySQL數(shù)據(jù)目錄,并授權(quán)
    mkdir -p /data/mysql
    chown mysql:mysql -R /data/mysql
    5.編輯/etc/my.cnf配置參數(shù)文件
    [root@localhost ~]# cat /etc/my.cnf
    [client]
    port=3306
    socket=/tmp/mysql.sock

[mysql]
prompt="\u@db \R:\m:\s [\d]> "
no-auto-rehash

[mysqld]
user=mysql
port=3306
basedir=/usr/local/mysql
datadir=/data/mysql/
socket=/tmp/mysql.sock
pid-file=db.pid
character-set-server=utf8mb4
skip_name_resolve=1
open_files_limit=65535
back_log=1024
max_connections=512
max_connect_errors=1000000
table_open_cache=1024
table_definition_cache=1024
table_open_cache_instances=64
thread_stack=512K
external-locking=FALSE
max_allowed_packet=32M
sort_buffer_size=4M
join_buffer_size=4M
thread_cache_size=768
#query_cache_size=0
#query_cache_type=0
interactive_timeout=600
wait_timeout=600
tmp_table_size=32M
max_heap_table_size=32M
slow_query_log=1
slow_query_log_file=/data/mysql/slow.log
log-error=/data/mysql/error.log
long_query_time=0.1
server-id=3306101
log-bin=/data/mysql/mysql-bin
sync_binlog=1
binlog_cache_size=4M
max_binlog_cache_size=1G
max_binlog_size=1G
expire_logs_days=7
master_info_repository=TABLE
relay_log_info_repository=TABLE
gtid_mode=on
enforce_gtid_consistency=1
log_slave_updates
binlog_format=row
relay_log_recovery=1
relay-log-purge=1
key_buffer_size=32M
read_buffer_size=8M
read_rnd_buffer_size=4M
bulk_insert_buffer_size=64M

lock_wait_timeout=3600
explicit_defaults_for_timestamp=1
innodb_thread_concurrency=0
innodb_sync_spin_loops=100
innodb_spin_wait_delay=30

transaction_isolation=REPEATABLE-READ
#innodb_additional_mem_pool_size=16M
innodb_buffer_pool_size=512M
innodb_buffer_pool_instances=8
innodb_buffer_pool_load_at_startup=1
innodb_buffer_pool_dump_at_shutdown=1
innodb_data_file_path=ibdata1:1G:autoextend
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=32M
innodb_log_file_size=2G
innodb_log_files_in_group=2
innodb_max_undo_log_size=4G

innodb_io_capacity=4000
innodb_io_capacity_max=8000
innodb_flush_neighbors=0
innodb_write_io_threads=8
innodb_read_io_threads=8
innodb_purge_threads=4
innodb_page_cleaners=4
innodb_open_files=65535
innodb_max_dirty_pages_pct=50
innodb_flush_method=O_DIRECT
innodb_lru_scan_depth=4000
innodb_checksum_algorithm=crc32
##innodb_file_format=Barracuda
##innodb_file_format_max = Barracuda
innodb_lock_wait_timeout=10
innodb_rollback_on_timeout=1
innodb_print_all_deadlocks=1
innodb_file_per_table=1
innodb_online_alter_log_max_size=4G
internal_tmp_disk_storage_engine=InnoDB
innodb_stats_on_metadata=0

[mysqldump]
quick
max_allowed_packet=32M

6.初始化數(shù)據(jù)庫

有密碼初始化命令如下
[root@localhost ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/ --user=mysql --initialize
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解決辦法:
yum search libaio
yum install -y libaio.x86_64 libaio-devel.x86_64

重新執(zhí)行初始化命令成功
[root@localhost ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/ --user=mysql --initialize

注:無密碼初始化命令如下:
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/ --user=mysql --initialize-insecure
注:臨時(shí)初始化密碼,像MySQL5.7一樣,記錄在log-error(錯(cuò)誤日志)里面

7.啟動(dòng)數(shù)據(jù)庫。命令如下:

/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
查看數(shù)據(jù)庫啟動(dòng)日志
MySQL8.0二進(jìn)制免編譯包安裝部署過程
從日志可知數(shù)據(jù)啟動(dòng)成功,當(dāng)然也可以查看mysql進(jìn)程是否存在

查看mysql啟動(dòng)進(jìn)程
MySQL8.0二進(jìn)制免編譯包安裝部署過程

可以看到mysql數(shù)據(jù)已經(jīng)啟動(dòng),但是直接使用mysql無法登陸數(shù)據(jù)庫
MySQL8.0二進(jìn)制免編譯包安裝部署過程

原因:這是由于系統(tǒng)默認(rèn)會(huì)查找/usr/bin下的命令,但是我們mysql是安裝在/usr/local/mysql/bin/目錄下的,所以這個(gè)mysql命令不在/usr/bin這個(gè)目錄下,當(dāng)然會(huì)找不到命令,可以通過做軟連接,把/usr/local/mysql/bin/mysql映射一個(gè)鏈接到/usr/bin目錄下:
ln -s /usr/local/mysql/bin/mysql /usr/bin
就可以直接使用下面命令登陸數(shù)據(jù)庫:
mysql -uroot -p
MySQL8.0二進(jìn)制免編譯包安裝部署過程

登陸msyql數(shù)據(jù)庫需要密碼,原因是我們之前初始化時(shí)設(shè)置了密碼,這個(gè)密碼可以在error.log里面找到
[root@localhost ~]# cat /data/mysql/error.log |grep password
2018-08-23T01:10:18.173290Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: oJ+eg/cE!6)a
數(shù)據(jù)庫密碼就是:oJ+eg/cE!6)a
使用該密碼登陸數(shù)據(jù)庫
[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 8.0.12

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

root@db 22:06:  [(none)]>
首次登陸數(shù)據(jù)庫需要修改數(shù)據(jù)庫root密碼
root@db 22:27:  [(none)]> alter user 'root'@'localhost' identified by '123456';
MySQL8.0二進(jìn)制免編譯包安裝部署過程

安裝完成之后;可以觀察到MySQL8.0數(shù)據(jù)目錄下的文件相比之前版本發(fā)生了一些變化。
[root@localhost ~]# ll /data/mysql/
total 5300312
-rw-r----- 1 mysql mysql     56 Aug 22 21:10 auto.cnf
-rw------- 1 mysql mysql    1676 Aug 22 21:10 ca-key.pem
-rw-r--r-- 1 mysql mysql    1112 Aug 22 21:10 ca.pem
-rw-r--r-- 1 mysql mysql    1112 Aug 22 21:10 client-cert.pem
-rw------- 1 mysql mysql    1680 Aug 22 21:10 client-key.pem
-rw-r----- 1 mysql mysql      6 Aug 22 21:28 db.pid
-rw-r----- 1 mysql mysql    8093 Aug 22 21:28 error.log
-rw-r----- 1 mysql mysql    4447 Aug 22 21:28 ib_buffer_pool
-rw-r----- 1 mysql mysql 1073741824 Aug 22 22:28 ibdata1
-rw-r----- 1 mysql mysql 2147483648 Aug 22 22:28 ib_logfile0
-rw-r----- 1 mysql mysql 2147483648 Aug 22 21:10 ib_logfile1
-rw-r----- 1 mysql mysql  12582912 Aug 22 21:28 ibtmp1
drwxr-x--- 2 mysql mysql     143 Aug 22 21:10 mysql
-rw-r----- 1 mysql mysql     178 Aug 22 21:10 mysql-bin.000001
-rw-r----- 1 mysql mysql     155 Aug 22 21:20 mysql-bin.000002
-rw-r----- 1 mysql mysql     178 Aug 22 21:28 mysql-bin.000003
-rw-r----- 1 mysql mysql     471 Aug 22 22:28 mysql-bin.000004
-rw-r----- 1 mysql mysql     116 Aug 22 21:28 mysql-bin.index
-rw-r----- 1 mysql mysql  25165824 Aug 22 22:28 mysql.ibd
drwxr-x--- 2 mysql mysql    4096 Aug 22 21:10 performance_schema
-rw------- 1 mysql mysql    1680 Aug 22 21:10 private_key.pem
-rw-r--r-- 1 mysql mysql     452 Aug 22 21:10 public_key.pem
-rw-r--r-- 1 mysql mysql    1112 Aug 22 21:10 server-cert.pem
-rw------- 1 mysql mysql    1680 Aug 22 21:10 server-key.pem
-rw-r----- 1 mysql mysql    1052 Aug 22 22:28 slow.log
drwxr-x--- 2 mysql mysql     28 Aug 22 21:10 sys
-rw-r----- 1 mysql mysql  10485760 Aug 22 21:28 undo_001
-rw-r----- 1 mysql mysql  10485760 Aug 22 22:28 undo_002

注:多了很多.pem文件,沒有了.frm文件。而且undo日志文件從系統(tǒng)表空間拆分出來了。系統(tǒng)表和數(shù)據(jù)字典信息都存儲(chǔ)在mysql.ibd文件中。

MySQL數(shù)據(jù)庫正常關(guān)閉方式,命令如下:
/usr/local/mysql/bin/mysqladmin -uroot -proot123 shutdown'

對(duì)于以上關(guān)于MySQL8.0二進(jìn)制免編譯包安裝部署過程,大家是不是覺得非常有幫助。如果需要了解更多內(nèi)容,請(qǐng)繼續(xù)關(guān)注我們的行業(yè)資訊,相信你會(huì)喜歡上這些內(nèi)容的。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


當(dāng)前標(biāo)題:MySQL8.0二進(jìn)制免編譯包安裝部署過程-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://weahome.cn/article/dosjhe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部