話不多說,直接開幹:
1.mysql下載地址(這裏使用的是5.7.28)
官網地址: https://dev.mysql.com/downloads/mysql/
百度雲地址: https://pan.baidu.com/s/1kGXBgt1KP8UzD68iJ-jgFg
提取碼:href
2.解壓安裝包:tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
改名: mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql-5.7.28
3.創建用戶組,用戶
groupadd mysql
useradd -r -g mysql mysql
4.創建mysql數據倉庫目錄
mkdir mysql_data(目錄隨便,配置正確就好)
我的路徑 basedir=/home/software/soft/mysql/mysql-5.7.28
datadir=/home/software/soft/mysql/mysql_data/
5.編輯my.cnf文件
5.7版本後,mysql取消了此文件,這裏手動添加了一個
vi /etc/my.cnf 粘貼如下的內容
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 10G
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
log_bin
character-set-server=utf8
collation-server=utf8_bin
init-connect='SET NAMES utf8'
# These are commonly set, remove the # and set as required.
basedir = /home/software/soft/mysql/mysql-5.7.28
datadir = /home/software/soft/mysql/mysql_data
port = 3306
server_id = 22206
socket = /home/software/soft/mysql/mysql_data/mysql.sock
binlog_format = statement
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
log_bin_trust_function_creators = on
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
lower_case_table_names=1
注意這三個參數:
basedir = /home/software/soft/mysql/mysql-5.7.28 (mysql安裝路徑)
datadir = /home/software/soft/mysql/mysql_data (mysql數據倉庫)
socket = /home/software/soft/mysql/mysql_data/mysql.sock (數據倉庫路徑下)
6.設置目錄訪問權限
mysql安裝目錄執行(注意有個點:代表所有文件)
chown -R mysql .
chgrp -R mysql .
chown -R mysql /home/software/soft/mysql/mysql_data(數據倉庫路徑)
7.配置參數
mysql安裝目錄執行(basedir、datadir對應修改)
bin/mysqld --initialize --user=mysql --basedir=/home/software/soft/mysql/mysql-5.7.28 --datadir=/home/software/soft/mysql/mysql_data/
bin/mysqld --initialize --user=mysql --basedir=/home/software/soft/mysql/mysql-5.7.28 --datadir=/home/software/soft/mysql/mysql_data/
這裏八成會報錯:按照提示改就好 /etc/my.cnf at line 5 大多是沒有註釋完
再次執行 : bin/mysqld --initialize --user=mysql --basedir=/home/software/soft/mysql/mysql-5.7.28 --datadir=/home/software/soft/mysql/mysql_data/
成功後記錄一下這個臨時密碼,後面改密碼需要 :4hwro%Z<6XBj
在mysql安裝路徑下繼續配置:
bin/mysql_ssl_rsa_setup --datadir=/home/software/soft/mysql/mysql_data/
cp support-files/mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
- 修改 basedir=/home/software/soft/mysql/mysql-5.7.28(安裝路徑)
- 修改 datadir=/home/software/soft/mysql/mysql_data/(數據倉庫)
7.啓動
/etc/init.d/mysql start(啓動)
mysql -hlocalhost -uroot -p(如果如圖報錯)
執行:ln -s /home/software/soft/mysql/mysql-5.7.28/bin/mysql /usr/bin (前面的地址安裝路徑,後面的地址可以不變)
然後再 mysql -hlocalhost -uroot -p(重新登陸),如果報這個錯:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
mv 指令移動生成的.sock 和 .sock.lock 文件到/tmp (默認目錄)
生成的.sock 和 .sock.lock 在數據倉庫目錄裏面
mv /home/software/soft/mysql/mysql_data/mysql.sock /tmp
mv /home/software/soft/mysql/mysql_data/mysql.sock.lock /tmp
mysql -hlocalhost -uroot -p(再重新登陸,不出意外已經OK)
8.啓動後修改數據庫相關配置:
修改密碼(password(‘root’)) root 即爲密碼
mysql> set password=password(‘root’);
設置root賬戶的host地址(修改了纔可以遠程連接)
賦權等:
grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges;
此時 庫已經OK
做個校驗:
use mysql;
select host,user from user;
這裏就可以使用遠程連接測試了,如果連接不上,關閉防火牆;
Centos6.9
(service iptables stop)
永久關閉 chkconfig iptables off
Centos7
設置開機啓用防火牆:systemctl enable firewalld.service
設置開機禁用防火牆:systemctl disable firewalld.service
啓動防火牆:systemctl start firewalld
關閉防火牆:systemctl stop firewalld
檢查防火牆狀態:systemctl status firewalld
9.配置mysql自動啓動
- chmod 755 /etc/init.d/mysql
- chkconfig --add mysql
- chkconfig --level 345 mysql on
一切搞定,結束!