Linux環(huán)境下通過二進制包安裝MySQL

MySQL常用的安裝方式有三種,yum源直接下載安裝冕香、編譯好的二進制包安裝、源碼編譯安裝突那。無論生產(chǎn)還是測試构眯,最常用的安裝方式惫霸,基本上都是二進制包的方式,簡單快捷壹店,滿足了多數(shù)需求硅卢。

MySQL官方下載地址:https://downloads.mysql.com/archives/community/

環(huán)境準(zhǔn)備

1.安裝MySQL需要的依賴藏杖,libaio脉顿,沒有這個MySQL安裝后就起不來了弊予。

root # yum install -y libaio

2.創(chuàng)建相關(guān)目錄和用戶并授權(quán)

root # mkdir -p /data/mysql/data
root # mkdir -p /data/mysql/base
root # mkdir /data/mysql/etc
root # mkdir -p /data/mysql/log/binlog
root # mkdir /data/mysql/tmp

# 創(chuàng)建mysql用戶开财,但不允許登錄
root # groupadd mysql
root # useradd  -r -g mysql -s /bin/false mysql

# 授權(quán)目錄
chown -R mysql. /data/mysql

安裝mysql

1.下載mysql二進制包,并解壓到base目錄下碾褂。

root # cd /opt
root # wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.44-el7-x86_64.tar.gz
root # tar xf mysql-5.7.44-el7-x86_64.tar.gz -C /data/mysql/base/
root # cd /data/mysql/base/
root # mv mysql-5.7.44-el7-x86_64/ 5.7.44

2.配置mysql的環(huán)境變量

root # vim /etc/profile
...
export MYSQL_HOME=/data/mysql/base/5.7.44
export PATH=$PATH:$MYSQL_HOME/bin

#使環(huán)境變量生效
root # source /etc/profile

3.在mysql的etc目錄下添加my.cnf文件正塌,并實際情況修改內(nèi)容

root # vim /data/mysql/etc/my.cnf
[client]
port                            = 3306
user                            = root
socket                          = /data/mysql/data/mysql_3306.sock

[mysql]
prompt                          ='[\c][Conn:\C][\R:\\m:\\s][\U][\d]> '
default-character-set           = utf8mb4
#prompt                         ='\U[\d]> '
tee                             = /data/mysql/data/mysql_operation.log

[mysqld]
# Base Config
server_id = 4673
basedir                             = /data/mysql/base/5.7.44
datadir                             = /data/mysql/data
tmpdir                              = /data/mysql/tmp
secure_file_priv                    = /data/mysql/tmp
pid-file                            = mysqld.pid
socket                              = /data/mysql/data/mysql_3306.sock
user                                = mysql
port                                = 3306
default_storage_engine              = InnoDB
character_set_server                = utf8mb4
skip_slave_start                    = 1
skip-name-resolve                   = 1
skip-external-locking               = 1
lower_case_table_names              = 1
query_cache_type                    = 0
query_cache_size                    = 0
max_connections                     = 1000
default-time-zone                   = '+8:00'
log_timestamps                      = SYSTEM

# InnoDB config
innodb_strict_mode                          = 1
innodb_file_per_table                       = 1
innodb_stats_on_metadata                    = 0
innodb_flush_method                         = O_DIRECT
innodb_log_files_in_group                   = 3
innodb_data_file_path                       = ibdata1:1G:autoextend
innodb_buffer_pool_size                     = 1G
innodb_log_file_size                        = 256M
innodb_log_buffer_size                      = 32M
innodb_max_dirty_pages_pct                  = 60
innodb_io_capacity                          = 400
innodb_buffer_pool_instances                = 8
innodb_buffer_pool_load_at_startup          = 1
innodb_buffer_pool_dump_at_shutdown         = 1
innodb_undo_logs                            = 128
innodb_undo_tablespaces                     = 3
innodb_flush_neighbors                      = 1

# Cache config
key_buffer_size                     = 8M
tmp_table_size                      = 32M
max_heap_table_size                 = 32M
thread_cache_size                   = 1000
table_open_cache                    = 2048
open_files_limit                    = 65535
max_allowed_packet                  = 32M

# Log config
log_error                           = mysql-error.log
slow_query_log_file                 = mysql-slow.log
relay-log                           = mysql-relay
log-bin                             = mysql-bin
slow_query_log                      = 1
long_query_time                     = 0.2
#log_slow_admin_statements          = 1
#log_slow_slave_statements          = 1

# Semisync config
plugin-load                                 = "rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"
rpl_semi_sync_master_enabled                = 1
rpl_semi_sync_slave_enabled                 = 1

# Replication config
slave-parallel-type                 = LOGICAL_CLOCK
slave-parallel-workers              = 8
expire_logs_days                    = 14
binlog_format                       = row
log_slave_updates                   = ON
binlog_checksum                     = NONE
max_binlog_size                     = 250M
binlog_cache_size                   = 2M
sync_binlog                         = 1
innodb_flush_log_at_trx_commit      = 1
relay-log-info-repository           = TABLE
master_info_repository              = TABLE
relay_log_recovery                  = 1
binlog_rows_query_log_events        = 1
log_bin_trust_function_creators     = 1

# GTID
gtid-mode                           = ON
enforce-gtid-consistency            = 1


# Performance Schema
performance-schema-instrument                   = 'wait/lock/metadata/sql/mdl=ON'

4.初始化數(shù)據(jù)目錄,初始化mysql數(shù)據(jù)目錄有兩種方式鸠天,一種帶mysql管理用戶root的隨機密碼帐姻,一種是空密碼饥瓷。

# 無密碼
root # mysqld --defaults-file=/data/mysql/etc/my.cnf --initialize-insecure --user=mysql

# 有密碼,密碼在mysql data目錄下的error log中呢铆。
mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql

啟動mysql

1.配置mysql啟動文件

root # vim /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/data/mysql/data/mysqld.pid
TimeoutSec=0
ExecStart=/data/mysql/base/5.7.44/bin/mysqld --defaults-file=/data/mysql/etc/my.cnf --daemonize $MYSQLD_OPTS
EnvironmentFile=-/etc/sysconfig/mysql
LimitNOFILE = 65535
Restart=on-failure
RestartPreventExitStatus=1
Environment=MYSQLD_PARENT_PID=1
PrivateTmp=false

2.啟動mysql棺克,加入開機自啟,并連接測試

root # systemctl start mysqld.service
root # systemctl enable mysqld

# 連接測試
[root hxy /root] # mysql -uroot -p -S /data/mysql/data/mysql_3306.sock
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.44-log MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

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.

mysql> 
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市因俐,隨后出現(xiàn)的幾起案子周偎,更是在濱河造成了極大的恐慌蓉坎,老刑警劉巖胡嘿,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異衷敌,居然都是意外死亡,警方通過查閱死者的電腦和手機助琐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門兵钮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舌界,“玉大人,你說我怎么就攤上這事葱轩“爻” “怎么了?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵缭嫡,是天一觀的道長抬闷。 經(jīng)常有香客問我,道長评架,這世上最難降的妖魔是什么炕泳? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任培遵,我火速辦了婚禮登刺,結(jié)果婚禮上嗡呼,老公的妹妹穿的比我還像新娘。我一直安慰自己揍很,他們只是感情好万伤,可當(dāng)我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布壕翩。 她就那樣靜靜地躺著,像睡著了一般放妈。 火紅的嫁衣襯著肌膚如雪芜抒。 梳的紋絲不亂的頭發(fā)上托启,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天,我揣著相機與錄音拐迁,去河邊找鬼疗绣。 笑死,一個胖子當(dāng)著我的面吹牛缓淹,可吹牛的內(nèi)容都是我干的塔逃。 我是一名探鬼主播,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼伏蚊,長吁一口氣:“原來是場噩夢啊……” “哼格粪!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起颜阐,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤凳怨,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后紫新,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體李剖,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了德玫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖琴儿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情显熏,我是刑警寧澤谜疤,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布夷磕,位于F島的核電站,受9級特大地震影響坐桩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜膘螟,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一荆残、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧内斯,春花似錦、人聲如沸俘闯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽遮婶。三九已至,卻和暖如春衍菱,著一層夾襖步出監(jiān)牢的瞬間肩豁,已是汗流浹背辫呻。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工放闺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人怖侦。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓匾寝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親急凰。 傳聞我的和親對象是個殘疾皇子猜年,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容