1. 文檔說(shuō)明
簡(jiǎn)述mysql數(shù)據(jù)庫(kù)基礎(chǔ)安裝配置手冊(cè)讶舰,性能調(diào)優(yōu)需要結(jié)合my.cnf的參數(shù)進(jìn)行調(diào)優(yōu),將在其他文檔中進(jìn)行介紹表箭,安裝配置需要注意mysql軟件介質(zhì)目錄和數(shù)據(jù)目錄的規(guī)劃求橄。
2. 參考文檔
mysql reference手冊(cè)
3. 系統(tǒng)準(zhǔn)備
操作系統(tǒng):centos 6.5(mini desktop安裝)
mysql:mysql 5.7.{16,17牙寞,18}
Item | Item Content |
---|---|
IP | 192.168.4.192 |
HOSTNAME | node2.mono |
MYSQL_HOME | /opt/mysql/5.7.16 |
DATA DIR | /mysql/data |
BINLOG DIR | /mysql/binlog |
MY.CNF DIR | /etc/my.cnf |
Notes:mysql數(shù)據(jù)庫(kù)對(duì)目錄結(jié)構(gòu)并無(wú)要求饺鹃,操作中使用結(jié)構(gòu)清晰的目錄方便理解和操作簡(jiǎn)便性;除了RPM包安裝不能使用自定義MYSQL_HOME间雀,其他安裝配置方式都可以自定義MYSQL_HOME悔详。
4. 二進(jìn)制包安裝
4.1 安裝介質(zhì)準(zhǔn)備
下載地址:https://dev.mysql.com/downloads/mysql/
4.2 系統(tǒng)用戶(hù)創(chuàng)建
groupadd -g 270 mysql
useradd -u 271 -g mysql -s /bin/bash -d /home/mysql -m mysql
4.3 相關(guān)目錄創(chuàng)建
mkdir -p /mysql/{data,binlog}
mkdir -p /opt/mysql/5.7.18
4.4 mysql安裝配置
檢查是否已有mysql組件
[root@node1 ~]# rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64
卸載已經(jīng)存在的mysql組件
rpm -e mysql-libs-5.1.71-1.el6.x86_64 –nodeps
上傳mysql介質(zhì)
cd /root
sftp> put mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
解壓mysql介質(zhì)到指定MYSQL_HOME目錄
tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /opt/mysql/5.7.18/ --strip-component=1
--strip-component=1參數(shù)表示文件目錄深度,這里=1表示過(guò)濾掉第一級(jí)目錄
配置my.cnf文件惹挟,5.7.18的二進(jìn)制包并沒(méi)有my-default.cnf茄螃,可以自己建立。
cd /opt/mysql/5.7.18/support-files/
cp my-default.cnf /etc/my.cnf
vi /etc/my.cnf
#添加修改以下內(nèi)容
[mysqld_safe]
log-error = /mysql/mysqld.log
[mysqld]
basedir = /opt/mysql/5.7.18
datadir = /mysql/data
port = 3306
server_id = 1
socket = /tmp/mysqld.sock
[client]
socket = /tmp/mysqld.sock
配置mysql服務(wù)
cd /opt/mysql/5.7.18/support-files/
cp mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
#修改以下內(nèi)容
basedir=/opt/mysql/5.7.18
datadir=/mysql/data
lockdir='/mysql'
lock_file_path="$lockdir/mysqld.loc"
授權(quán)目錄和文件
chown mysql.mysql -R /mysql
chown mysql.mysql -R /opt/mysql
chown mysql.mysql -R /etc/my.cnf
chown mysql.mysql -R /etc/init.d/mysqld
4.5 環(huán)境變量配置
su – mysql
vi ~/.bash_profile
添加和修改以下內(nèi)容
# Set for mysql database
export MYSQL_HOME=/opt/mysql/5.7.18
PATH=$PATH:$HOME/bin:$MYSQL_HOME/bin
生效環(huán)境變量
source ~/.bash_profile
4.6 mysql初始化數(shù)據(jù)
mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql
#不指定defauls-file也可以连锯,/etc/my.cnf會(huì)被優(yōu)先讀取归苍,如果指定了defaults-file則必須放在第一個(gè)選項(xiàng);注意看最后一行信息运怖,mysql會(huì)生成臨時(shí)密碼拼弃,登陸后進(jìn)行修改。
2017-04-10T17:33:52.594053Z 1 [Note] A temporary password is generated for root@localhost: TIQU#*2*c#1A
4.7 mysql進(jìn)程啟動(dòng)
[mysql@node1 ~]$ /etc/init.d/mysqld start
Starting MySQL. [ OK ]
#進(jìn)程確認(rèn)
ps -ef | grep mysql
root 2222 1832 0 01:24 pts/1 00:00:00 su - mysql
mysql 2223 2222 0 01:24 pts/1 00:00:00 -bash
mysql 2363 1 0 01:37 pts/1 00:00:00 /bin/sh /opt/mysql/5.7.18/bin/mysqld_safe --datadir=/mysql/data --pid-file=/mysql/data/node1.mono.pid
mysql 2558 2363 1 01:37 pts/1 00:00:00 /opt/mysql/5.7.18/bin/mysqld --basedir=/opt/mysql/5.7.18 --datadir=/mysql/data --plugin-dir=/opt/mysql/5.7.18/lib/plugin --log-error=/mysql/mysqld.log --pid-file=/mysql/data/node1.mono.pid --socket=/tmp/mysqld.sock --port=3306
mysql 2591 2223 1 01:38 pts/1 00:00:00 ps -ef
mysql 2592 2223 0 01:38 pts/1 00:00:00 grep mysql
關(guān)閉mysql進(jìn)程
/etc/init.d/mysqld stop
Shutting down MySQL.. [ OK ]
4.8 root密碼修改
mysql -uroot -hlocalhost -p
mysql> alter user 'root'@'localhost' identified by 'mysql*123';
mysql> flush privileges;