1. 程式人生 > >二進位制安裝包安裝MySQL

二進位制安裝包安裝MySQL

檔案準備:
mysql二進位制安裝包:mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz
配置檔案:my.cnf

【注意,以下步驟部分有依賴關係,不要隨意顛倒】

0、作業系統配置

--關閉Selinux。編輯引數SELINUX,取值為disabled,儲存退出
vi /etc/selinux/config
SELINUX=disabled


--關閉防火牆
RedHat6/CentOS6系統:
service iptables stop
service ip6tables stop
service NetworkManager stop

chkconfig iptables off
chkconfig ip6tables off
chkconfig NetworkaMnager off

RedHat7/CentOS7系統:
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl stop NetworkManager
systemctl disable NetworkManager

修改系統限制引數
vi  /etc/security/limits.conf
在檔案末尾新增下列內容

* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535


重啟作業系統生效上述配置


1、軟體包安裝

--已有包解除安裝
rpm -qa | grep -i mysql  | xargs rpm -e --nodeps
rpm -qa | grep -i mariadb  | xargs rpm -e --nodeps

--刪除現有的mysql使用者資訊
userdel -r mysql

--保證yum源可用
yum clean all
yum repolist

--依賴包安裝
yum -y install perl-Digest-MD5 perl-DBD-MySQL perl-Time-HiRes


2、使用者建立

--mysql使用者建立
useradd mysql


3、二進位制安裝包解壓

安裝目錄:/usr/local/mysql
mysql預設安裝目錄:/usr

【注意】mysql安裝目錄不要修改,建議使用/usr/local/mysql

tar -xzvf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz -C /usr/local
ln -s /usr/local/mysql-5.6.25-linux-glibc2.5-x86_64 /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql


4、mysql資料目錄建立

資料目錄:/data/mysql。根據實際確定
mysql預設資料目錄:/var/lib/mysql

mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
chmod 755 /data/mysql

【注意】生產環境中根據作業系統磁碟掛載情況確定mysql資料庫資料檔案存放位置,一般都是高速大容量磁碟掛載目錄。


5、配置檔案準備

cp .../my.cnf /etc/my.cnf
在配置檔案中,資料目錄為/data/mysql,如果修改了資料目錄,則將配置檔案中所有的/data/mysql替換為第4步中的目錄路徑
變數修改:
innodb_buffer_pool_size,該引數建議設定成實體記憶體的50%-70%,例如:伺服器記憶體128G,則可取值90G。
server-id,在存在主從複製環境中,不同機器上安裝應該保證該引數取不同值。單例項環境無所謂。建議取值方式:IP小數點後數值拼接上埠。
例如:伺服器IP為192.168.32.234,配置檔案中引數port為3378,則server-id引數取值為:2343378


6、初始化資料

--mysql5.6
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --defaults-file=/etc/my.cnf --user=mysql

--basedir    :安裝目錄
--datadir    :資料目錄
--defaults-file    :預設配置檔案

--mysql5.7
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql


7、新增服務自啟動

mysql為自定義服務名稱,有時候也自定義命名為mysqld

cp  /usr/local/mysql/support-files/mysql.server  /etc/rc.d/init.d/mysql
chkconfig --add mysql
service mysql start/stop

*/ 若有報錯提示建立不了pid,可能是因為要清空/data/mysql(這個是我操作的時候遇到的問題)/*


8、環境變數設定

echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile

--生效變數設定
source /etc/profile


9、資料庫安全設定。

mysql5.6設定,mysql5.7無需設定

root使用者登入之後執行下列語句即可,其中123456為root使用者密碼,可根據實際情況修改

delete from mysql.user where host!='localhost' or user!='root';
set password=password('123456');
flush privileges;