注:該文檔比較潦草渔隶,可能僅適合作者本人閱讀惧所。
0.前言
使用mysql自帶的mysql_install_db命令這種安裝方式可以在特殊情況下有大用先嬉,如果當(dāng)前網(wǎng)絡(luò)環(huán)境內(nèi)至少有一個(gè)mysql實(shí)例蔽午,他甚至不需要去網(wǎng)絡(luò)上下載任何安裝包,僅憑這一個(gè)實(shí)例的文件就可以安裝無(wú)數(shù)個(gè)mysql而叼。
此外,他可能依賴(lài)于numactl
豹悬,請(qǐng)使用yum命令安裝它葵陵。yum install numactl -y
如果網(wǎng)絡(luò)內(nèi)缺乏yum源,請(qǐng)點(diǎn)擊此處查看yum相關(guān)文檔或自行百度瞻佛。
1.準(zhǔn)備配置文件
將下載好的壓縮包上傳到服務(wù)器脱篙,先編輯配置文件,將重要的初始化參數(shù)配置好伤柄。
my.cnf的主要配置如下:
[mysqld]
user = mysql
port = 6033
socket = /opt/mysql_6033/mysql_6033.sock
pid_file = /opt/mysql_6033/mysql.pid
basedir = /opt/mysql_6033
datadir = /data/mysql_data/data
log_error = /data/mysql_data/logs/error.log
#以下是非必須項(xiàng)
lower_case_table_names = 1
default-time_zone = '+8:00'
sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
max_allowed_packet = 1G
log_bin = /data/mysql_data/binlog/mysql-bin
relay_log = /data/mysql_data/relaylog/relay-bin
server_id = 1000
sync_binlog = 1
2.按照配置文件創(chuàng)建路徑并授權(quán)
將上面配置文件中的同類(lèi)別路徑授權(quán)绊困,如/opt/mysql_6033,/data/mysql_data等适刀,均使用chown -R mysql:mysql 命令授權(quán)
3.安裝數(shù)據(jù)庫(kù)
然后進(jìn)入basedir
秤朗,使用user
配置項(xiàng)的mysql用戶執(zhí)行下面命令:
[mysql@hadoop101 bin]$ ./mysql_install_db --defaults-file=/opt/mysql_6033/conf/mysql_6033.cnf --datadir=/data/mysql_data/data --user=mysql
有任何報(bào)錯(cuò)都會(huì)在終端輸出,如果報(bào)錯(cuò)信息不夠詳細(xì)笔喉,請(qǐng)觀察log_error
文件取视。
數(shù)據(jù)庫(kù)初始化成功之后在datadir
下會(huì)有初始的數(shù)據(jù)庫(kù)文件夾。
4.啟動(dòng)數(shù)據(jù)庫(kù)
然后進(jìn)入basedir
然遏,啟動(dòng)mysql數(shù)據(jù)庫(kù)
[mysql@hadoop101 bin]$ ./mysqld_safe --defaults-file=/opt/mysql_6033/conf/mysql_6033.cnf --user=mysql &
5.修改初始密碼
該步驟是必須的贫途,剛剛初始化的數(shù)據(jù)庫(kù)即便登錄也無(wú)法做任何事情。
但這里有個(gè)關(guān)鍵點(diǎn)待侵,使用mysql_install_db安裝數(shù)據(jù)庫(kù)實(shí)例的話丢早,初始root密碼不會(huì)保存在log_error
文件中,而是保存在mysql安裝用戶的家目錄下秧倾,文件名叫.mysql_secret
怨酝,是一個(gè)隱藏文件,需要ls -a
命令才可看到那先。
使用命令查看root初始密碼
[root@hadoop101 mysql]# cat .mysql_secret
# Password set for user 'root@localhost' at 2022-05-06 13:48:40
9DJdwC8?Lo5O
修改密碼
[mysql@hadoop101 bin]$ ./mysqladmin -u root -S /opt/mysql_6033/mysql_6033.sock -p password '0o0@O0O!'