一罚拟、系統(tǒng)更新
1蹦玫、查詢(xún)系統(tǒng)版本
[root@HostName ~]# uname -a
Linux HostName 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@HostName ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
2、系統(tǒng)更新
yum update
二答朋、安裝MYSQL
1续镇、 查詢(xún)系統(tǒng)中已安裝的mariadb并刪除镀裤,避免與MYSQL沖突
[root@HostName ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[root@HostName ~]# rpm -e --nodeps mariadb-libs
2卿樱、添加官方的yum源并安裝YUM源(用5.7源修改為8.0源)
[root@HostName ~]#wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
[root@HostName ~]#yum localinstall mysql57-community-release-el7-8.noarch.rpm
[root@HostName ~]#vi etc/yum.repos.d/mysql-community.repo
將MYSQL57復(fù)制一份僚害,并修改為8.0的,注意:需要禁用5.7的源
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
3繁调、 安裝MYSQL8.0
查看可安裝版本
yum repolist enabled | grep mysql
執(zhí)行安裝
yum install -y mysql-community-server
4萨蚕、 啟動(dòng)MYSQL
Systemctl start mysqld.service? ? ? //啟動(dòng)MYSQL
Systemctl enable mysqld.service? ? //設(shè)置開(kāi)機(jī)啟動(dòng)
systemctl daemon-reload? ? ? ? //重新加載
systemctl status mysqld.service? ? //查看MYSQL狀態(tài)
三靶草、 登陸MYSQL并修改ROOT密碼
注意:MySql安裝完成之后會(huì)在LOG文件(/var/log/mysqld.log)中生成一個(gè)root的默認(rèn)密碼
[root@HostName ~]#grep 'temporary password' /var/log/mysqld.log
2018-10-10T00:54:47.464966Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: dogl;VhEq8HH
[root@HostName ~]# mysql –uroot –p
Enter password:
輸入ROOT密碼
修改ROOT密碼
mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'new psd';
#密碼強(qiáng)度默認(rèn)為中等,大小寫(xiě)字母门岔、數(shù)字爱致、特殊符號(hào)烤送,只有修改成功后才能修改配置再設(shè)置更簡(jiǎn)單的密碼
四寒随、關(guān)閉SELinux
[root@HostName ~]#?vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#? ? enforcing - SELinux security policy is enforced.
#? ? permissive - SELinux prints warnings instead of enforcing.
#? ? disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
#? ? targeted - Targeted processes are protected,
#? ? minimum - Modification of targeted policy. Only selected processes are protected.
#? ? mls - Multi Level Security protection.
SELINUXTYPE=targeted
使配置即時(shí)生效
[root@HostName ~]#setenforce 0
五、 配置防火墻帮坚,開(kāi)放MYSQL端口3306
[root@HostName ~]#firewall-cmd --permanent --zone=public --add-port=3306/tcp //配置端口
[root@HostName ~]#firewall-cmd –reload? //刷新防火墻
{擴(kuò)展閱讀:mysql的密碼策略}
mysql>show variables like '%validate_password%';
+---------------------------------------+--------+
| Variable_name? ? ? ? ? ? ? ? ? ? ? ? | Value? |
+---------------------------------------+--------+
?| validate_password_check_user_name? ? | ON? ? |
| validate_password_dictionary_file ? ? ? ? ? ?|? ? ? ? |
?| validate_password_length ? ? ? ? ? ? ? ? ? ? ? ? ?| 8? ? ? |
| validate_password_mixed_case_count? ? | 1? ? ? |
?| validate_password_number_count ? ? ? ? ? ?| 1? ? ? |
| validate_password_policy ? ? ? ? ? ? ? ? ? ? ? ? ?| MEDIUM |
?| validate_password_special_char_count? | 1? ? ? |
+---------------------------------------+--------+
?7 rows in set (0.01 sec)
默認(rèn)的密碼策略
1. validate_password_policy:密碼策略妻往,默認(rèn)為MEDIUM策略
2. validate_password_dictionary_file:密碼策略文件,策略為STRONG才需要
3. validate_password_length:密碼最少長(zhǎng)度
4. validate_password_mixed_case_count:大小寫(xiě)字符長(zhǎng)度试和,至少1個(gè)
5. validate_password_number_count :數(shù)字至少1個(gè)
6. validate_password_special_char_count:特殊字符至少1個(gè)
修改密碼策略
在/etc/my.cnf文件添加validate_password_policy配置:
# 選擇0(LOW)讯泣,1(MEDIUM),2(STRONG)其中一種阅悍,選擇2需要提供密碼字典文件
validate_password_policy=0
或者set global validate_password.policy=0;
修改默認(rèn)編碼
在/etc/my.cnf配置文件的[mysqld]下添加編碼配置:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
重啟mysql好渠,是修改生效
#systemctl restart mysqld
遠(yuǎn)程登錄用戶(hù)添加
mysql> GRANT ALL PRIVILEGES ON . TO 'admin'@'%' IDENTIFIED BY '*****' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
查看用戶(hù)
mysql> select host,user from mysql.user;
?+-----------+------------------+
?| host? ? ? | user ? ? ? ? ? ? ? ? |
+-----------+------------------+
| localhost | mysql.infoschema |
?| localhost | mysql.session? ? |
?| localhost | mysql.sys? ? ? ? |
| localhost | root? ? ? ? ? ? |
+-----------+------------------+
4 rows in set (0.00 sec)