linux系統下安裝MySQL5.7詳細教程
本次安裝使用壓縮包方式安裝,同時附帶systemv和systemd兩種啓動方式配置,絕對保姆級教程。學習此教程需要了解Linux基礎命令掌握vi編輯器。
一、下載壓縮包
前往MySQL官網下載MySQL5.7.28的Linux二進制社區版壓縮包,操作系統類型根據自己情況選擇,一般選擇64位。如果覺得去官網下載比百度網盤還要慢,可以去我的百度網盤自取,百度網盤鏈接 提取碼:8jvw。
二、安裝
在/opt目錄下創建application文件夾,通過xftp將壓縮包傳輸到Linux系統上/opt/application中並解壓並且重命名爲mysql,Xftp工具百度網盤地址 提取碼:lzwx。使用方法和Xshell一樣。
創建文件夾命令:
cd /opt
mkdir /application
解壓命令和重命名命令:
tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql
寫入環境變量中,文件所在位置 /etc/profile,在profile文件最後加上export PATH=/opt/application/mysql/bin:$PATH。注:根據自己安裝路徑添加
命令如下:
vim /etc/profile
2.1移除Linux默認數據庫Maria DB
根據自己系統Maria DB版本移除,別照抄命令。
rpm -qa | grep mariadb
yum remove mariadb-libs-5.5.56-2.el7.x86_64 -y
2.2在根目錄下創建/data文件夾,作爲數據和日誌文件存儲目錄
mkdir /data
2.3創建mysql用戶並授權,數據存儲目錄和軟件安裝目錄都要授權
命令:
useradd mysql
chown -R mysql.mysql /opt/application/*
chown -R mysql.mysql /data
2.4初始化數據
初始化數據輸出原始密碼用於root用戶第一次登錄。
mkdir /data/mysql/data -p
chown -R mysql.mysql /data
mysqld --initialize --user=mysql --basedir=/opt/application/mysql --datadir=/data/mysql/data
注:此處報-bash: mysqld: command not found是因爲/etc/profile配置文件沒有生效,使用 source /etc/profile命令使其生效,在重新初始化數據。
2.5配置啓動方式
2.5.1systemv啓動方式
配置MySQL啓動方式配置文件,命令如下:
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/opt/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
EOF
配置文件介紹:
#服務器端配置,標籤[mysqld_dafe][server]也行
[mysqld]
#用戶
user=mysql
#軟件安裝路徑
basedir=/opt/application/mysql
#數據路徑
datadir=/data/mysql/data
#socket文件路徑
socket=/tmp/mysql.sock
#服務器ID號,在主從關係中區分不同節點。
server_id=6
#端口號
port=3306
#客戶端配置,標籤[mysqladmin][mysqldump][client]也行
[mysql]
#socket文件目錄與服務器端socket文件位置一樣
socket=/tmp/mysql.sock
啓動:先拷貝配置文件再啓動。
cp /opt/application/mysql/support-files/mysql.server /etc/init.d/mysqld
service mysqld restart
2.5.2systemd
配置文件命令
cat >/etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/opt/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
啓動
systemctl start mysqld
三、遠程登錄
要想遠程登錄要先啓動MySQL,並且給數據庫用戶遠程連接權限,先登錄,再重置密碼(必須重置初始化密碼),最後授權遠程登錄(授權規則’用戶名’@‘白名單’)。
mysql -uroot -p 初始化密碼
ALTER USER USER() IDENTIFIED BY '123456';
grant all on *.* to root@'%' identified by '123456';
使用Navicat Premium 12連接測試。Navicat 網盤資源 提取碼:f3dg
獲取IP地址命令:ip addr
注:有些遠程登錄連接不上可能是因爲防火牆問題
關閉防火牆:systemctl stop firewalld.service;