centos7部署mysql-5.7
[TOC]
一.環境宣告
[mysql-Server]
主機名 = host-1
系統 = centos-7.3
地址 = 1.1.1.1
軟體 = mysql-5.7 3306
使用二進位制包部署會下載比較大,大約500M左右,而原始碼包就幾十M。但使用二進位制包不用編譯,部署較快,相比於yum可以自定義目錄,方便維護。
二.程式部署
1.安裝依賴
yum -y install autoconf libaio bison ncurses-devel
2.建立使用者
groupadd mysql
useradd -g mysql -s /sbin/nologin mysql
3.清理centos7 預設自帶資料庫,一定要清理乾淨
yum -y remove mariadb mariadb-server
4.下載二進位制包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
tar -xf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
移動過去,後面是存放路徑
mv mysql-5.7.21-linux-glibc2.12-x86_64 /usr/local/mysql
mkdir /var/log/mysql
mkdir /usr/local/mysql/data
mysql即使root啟動還是mysql使用者執行的,所以要給許可權
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /var/log/mysql
5.進去刪除所有行,新增新的
vim /etc/my.cnf
[client] port = 3306 socket = /tmp/mysql.sock [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/usr/local/mysql datadir=/usr/local/mysql/data socket=/tmp/mysql.sock log-error=/var/log/mysqld.log pid-file=/usr/local/mysql/mysqld.pid
6.初始化
cd /usr/local/mysql/bin
初始化資料庫,沒有反應則正確,這裡可以自定義目錄
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
7.加入systemctl控制
vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=mysql
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mysql/support-files/mysql.server start
ExecReload=/usr/local/mysql/support-files/mysql.server restart
ExecStop=/usr/local/mysql/support-files/mysql.server stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
8.設定環境變數
echo 'PATH=$PATH':/usr/local/mysql/bin >> /etc/profile
source /etc/profile
9.啟動
systemctl daemon-reload
systemctl start mysql
systemctl enable mysql
三.更改初始密碼
1.檢視密碼
cat /var/log/mysqld.log
最後一行:root@localhost:
這裡就是初始密碼
需要進入資料庫用如下命令修改密碼才能讓資料庫正常使用
mysql -uroot -p
ALTER USER USER() IDENTIFIED BY '123456';