一、資源位址
下載下傳位址 https://dev.mysql.com/downloads/mysql/
二、安裝前準備,解除安裝自帶的 mariadb,安裝依賴環境
列出已安裝的 mariadb
[root@mysql ~]# rpm -qa | grep mariadb mariadb-libs-5.5.60-1.el7_5.x86_64 方法一:rpm -e --nodeps 解除安裝 mariadb [root@mysql ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 方法二:yum -y remove 解除安裝 mariadb [root@mysql ~]# yum -y remove mariadb-libs-5.5.60-1.el7_5.x86_64
如果有多餘的殘留目錄删除它,沒有則跳過
[root@mysql ~]# find / -name mysql -print 如下: [root@mysql ~]# rm -rf /var/lib/mysql [root@mysql ~]# rm -rf /var/lib/mysql/mysql [root@mysql ~]# rm -rf /usr/bin/mysql [root@mysql ~]# rm -rf /usr/lib64/mysql
安裝基礎軟體。
[root@mysql ~]# yum -y install wget (如果你不用ftp或者lrzsz上傳) [root@mysql ~]# yum -y install lrzsz (簡單好用的上傳下載下傳軟體) [root@mysql ~]# yum -y install vim
安裝依賴軟體。
[root@mysql ~]# yum -y install net-tools [root@mysql ~]# yum -y install openssl openssl-devel [root@mysql ~]# yum -y install libaio libaio-devel [root@mysql ~]# yum -y install perl perl-devel [root@mysql ~]# yum -y install perl-JSON.noarch [root@mysql ~]# yum -y install autoconf
三、檢視、關閉 firewall 防火牆
[root@mysql home]# firewall-cmd --state [root@mysql home]# systemctl stop firewalld.service [root@mysql home]# systemctl disable firewalld.service
四、關閉selinux,進入到/etc/selinux/config檔案,将SELINUX=enforcing 改為SELINUX=disabled
[root@mysql home]# vi /etc/selinux/config
五、重新開機 CentOS…
[root@mysql home]# reboot
六、上傳mysql的tar包,解壓tar包
[root@mysql ~]# cd /home [root@mysql home]# tar -xvf mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar [root@mysql mysql]# ls -lShr
七、開始安裝mysql
PS:注意安裝順序 common -> -client-plugins -> libs -> client -> server [root@mysql mysql]# rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm [root@mysql mysql]# rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm [root@mysql mysql]# rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm [root@mysql mysql]# rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm [root@mysql mysql]# rpm -ivh mysql-community-libs-compat-8.0.17-1.el7.x86_64.rpm(可選) [root@mysql mysql]# rpm -ivh mysql-community-devel-8.0.17-1.el7.x86_64.rpm(可選) [root@mysql mysql]# rpm -ivh mysql-community-embedded-compat-8.0.17-1.el7.x86_64.rpm(可選) [root@mysql mysql]# rpm -ivh mysql-community-test-8.0.17-1.el7.x86_64.rpm(可選) [root@mysql mysql]# rpm -qa | grep mysql
八、初始化資料庫,目錄授權,啟動mysql服務 [注意操作順序]
[root@gnome mysql]# mysqld --initialize --console --lower_case_table_names=1 (初始化,并設定不區分大小寫) [root@gnome mysql]# chown -R mysql:mysql /var/lib/mysql/ [root@gnome mysql]# systemctl start mysqld
九、檢視是否啟動成功,active (running)
十、檢視初始化後的臨時密碼
[root@gnome mysql]# grep 'temporary password' /var/log/mysqld.log 或者 [root@gnome mysql]# cat /var/log/mysqld.log | grep 'temporary password'
十一、登入mysql
[root@mysql home]# mysql -u root -p Enter password: 直接粘貼初始密碼 ,回車确認
十二、修改初始密碼,授權遠端登入
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'HomeTest$2019'; (修改 “HomeTest$2019” 為你自己的密碼) mysql> use mysql; (切換到mysql庫) mysql> update user set host = "%" where user='root'; (授權遠端登入) mysql> flush privileges; (重新整理) mysql> quit; (登出)
十四、配置 後重新開機
vim /etc/my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html
[mysql]
local-infile=1
[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 = 128M
# Remove the leading "# " to disable binary logging
# Binary logging captures changes between backups and is enabled by
# default. It's default setting is log_bin=binlog
# disable_log_bin
# 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
# Remove leading # to revert to previous value for default_authentication_plugin,
# this will increase compatibility with older clients. For background, see:
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
# default-authentication-plugin=mysql_native_password
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
lower-case-table-names=1