一、軟件環境
[root@localhost ~]# uname -r
3.10.0-862.el7.x86_64
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
二、安裝部署過程詳解
- MySQL安裝3種方式:
1>rpm包安裝
應用文件默認安裝在/usr/local 目錄下
2>源碼編譯
需要定製文件路徑和參數
3> 二進制免編譯方式
優點是可以指定文件安裝路徑,不存在依賴包問題 - 下載安裝包到/usr/local/src
[root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
- 解壓tar安裝包
[root@localhost src]# tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
查看解壓過程是否存在報錯
[root@localhost src]# echo $? 0
說明:返回0表示解壓成功,否則解壓失敗
- 移動重命名,注意執行這條命令時,/usr/local/下面是沒有mysql目錄的
[root@localhost src]# mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql
[root@localhost src]# ll
total 321176
-rw-r--r-- 1 root root 328882304 Dec 9 2017 mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
[root@localhost src]# ll /usr/local/mysql/
5.創建mysql用戶和用戶組
[root@localhost src]# cd /usr/local/mysql/
[root@localhost mysql]# useradd mysql
6.創建數據庫目錄/data/mysql
[root@localhost mysql]# mkdir /data/mysql
7.初始化數據庫
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/date/mysql
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
報錯分析:
初始化mysql數據庫報這個錯,是因爲缺少Data::Dumper這個模塊
解決辦法1:安裝aotuconf庫
yum -y install autoconf
解決辦法2:模糊搜索perl和dumper這兩個軟件包
[root@localhost mysql]# yum list | grep perl |grep -i dumper
出現4個Dumper相關的軟件包,如果在不知道缺少哪個包的前提下,建議依次yum安裝每個軟件包,然後再執行數據庫初始化命令看返回結果再來執行數據庫初始化命令,可以從兩個方面判斷數據庫初始化是否成功
a.執行數據庫初始化過程出現兩個OK
b.執行echo $?返回值是否爲0說明:echo $?的作用是檢查上一條命令執行狀態,成功返回0,失敗返回非0
8.複製mysql5.6的配置文件模板
[root@localhost mysql]# cp ./support-files/my-default.cnf /etc/my.cnf
編輯/etc/my.cnf datadir = /data/mysql socket = /tmp/mysql.sock
9.把mysql5.6數據庫的啓動腳本移動到/etc/init.d/mysqld
編輯數據庫啓動腳本/etc/init.d/mysqld,修改
basedir=
datadir=
參數爲
basedir=/usr/local/mysql
datadir=/data/mysql
在centos7.5上,如果想要把mysql數據庫啓動腳本加入到系統開機啓動,執行下面命令
10.啓動MySQL數據庫,執行
[root@localhost mysql]# service mysqld start
Starting MySQL.Logging to '/data/mysql/localhost.localdomain.err'.
................. SUCCESS!
或者
[root@localhost mysql]# /etc/init.d/mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[root@localhost mysql]#
此時可查看到mysql數據庫進程
[root@localhost mysql]# ps -ef |grep mysqld
查看數據庫監控的端口爲3306
[root@localhost mysql]# netstat -nlpt
11.從命令行啓動mysql服務
[root@localhost mysql]# /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/localhost.localdomain.pid &
[root@localhost ~]# ps -ef |grep mysqld
root 20630 17325 0 02:09 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/localhost.localdomain.pid
mysql 20767 20630 0 02:09 pts/0 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=localhost.localdomain.err --pid-file=/data/mysql/localhost.localdomain.pid --socket=/tmp/mysql.sock
root 20861 20802 0 02:10 pts/1 00:00:00 grep --color=auto mysqld