Linux-RHEL7環境MySQL安裝配置
1. RHEL7解決yum服務問題
(1)說明
- 多數教程中提供的是使用網易雲或者阿里雲提供的CentOS-yum源來替換RHEL中的預設yum,試了幾種源後親測在RHEL7.4中替換失敗。
(2)RHEL7.4掛載方式解決yum
- 將系統 rhel-server-7.4-x86_64-dvd.iso 檔案拷貝到 /soft 目錄下
- 建立掛載所需的目錄:
$ mkdir -p /media/cdrom
- 掛載:
$ mount -o loop /soft/rhel-server-7.4-x86_64-dvd.iso /media/cdrom
- 進入 /etc/yum.repo.d 目錄,對yum 源進行設定
$ cd /etc/yum.repo.d
$ vi server.repo
-
[base] name=Redhat Enterprise 7 baseurl=file:///media/cdrom enable=1 gpgcheck=0 gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release 複製程式碼
- 檢視是否安裝成功,顯示軟體包個數,源配置成功:
$ yum repolist
2. 安裝MySQL
(1)安裝依賴:
$ yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake
(2)解壓安裝包:
- (需要安裝包文末評論)
$ tar -zxvf mysql-5.6.43.tar.gz -C 目標路徑
(3)建立使用者和組
$ groupadd -r mysql
$ useradd -g mysql -r -d /mydata/data mysql
(4)編譯
$ cd mysql-5.6.34
$ cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
(5)安裝
$ make
$ make install
(6)檢視是否安裝成功
- 檢視mysql版本
$ /usr/local/mysql/bin/mysql --version
3. 配置
(1)更改 /usr/local/mysql 目錄所屬:
$ cd /usr/local
$ chown -R mysql:mysql mysql
(2)安裝perl:
$ yum -y install perl*
(3)初始化資料庫
$ mkdir -p /mydata/data
$ cd /usr/local/mysql
$ ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/data
(4)配置檔案
$ cp support-files/my-default.cnf /etc/my.cnf
(5)新增到服務
$ cp support-files/mysql.server /etc/rc.d/init.d/mysqld
$ chkconfig --add mysqld
$ chkconfig mysqld on
(6)新增到環境變數
- 修改配置檔案:
vi /etc/profile
- 增加以下內容:
export PATH=$PATH:/usr/local/mysql/bin
- 宣告環境變數:
source /etc/profile
(7)啟動
$ service mysqld start
(8)測試
mysql -uroot -p
- 初始沒有密碼,直接回車
- 登入成功
(9)設定密碼
- mysqladmin -uroot password 要設定的密碼
4. 常用命令
- 啟動:service mysqld start
- 停止:service mysqld stop
- 重啟:service mysqld restart
- 過載配置:service mysqld reload