1. 程式人生 > 資料庫 >CentOS 7 下使用yum安裝MySQL5.7.20 最簡單方法

CentOS 7 下使用yum安裝MySQL5.7.20 最簡單方法

CentOS7預設資料庫是mariadb,但是 好多用的都是mysql ,但是CentOS7的yum源中預設好像是沒有mysql的。

上一篇安裝的是5.6的但是我想安裝5.7的 yum安裝是最簡單的 嘗試過編譯安裝各種問題,最後就決定用yum。

(經過一段時間的學習又寫了一篇用原始碼安裝mysql5.7.22的 點選開啟連結)

1.解除安裝 先停掉mysql程序 沒有安裝過的可以直接跳過

 pkill -9 mysqld  
  rpm -qa|grep -i mysql 

用命令 yum -y remove

  yum -y remove mysql-community-client-5.6.38-2.el7.x86_64

解除安裝不掉的用 rpm -ev

依次解除安裝 直到沒有

2.下載mysql的repo源 這個安裝的mysql5.7.20 /**糾正一下,這源下載的是最新的版本 ****/

 [root@localhost ~]# cd /usr/local/src/
 [root@localhost src]# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
 [root@localhost src]# rpm -ivh mysql57-community-release-el7-8.noarch.rpm
 [root@localhost src]# yum -y install mysql-server

(也可以指定安裝目錄 yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server )我沒試,這樣裝環境變數配置都不用你管,裝上直接啟動就行。安裝路徑是預設的。

一路 y

根據步驟安裝就可以了,

預設配置檔案路徑:
配置檔案:/etc/my.cnf
日誌檔案:/var/log/var/log/mysqld.log
服務啟動指令碼:/usr/lib/systemd/system/mysqld.service
socket檔案:/var/run/mysqld/mysqld.pid

配置 my.cnf vim /etc/my.cnf

[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 leading # to turn on a very important data integrity option: logging
 # changes to the binary log between backups.
 # 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
 datadir=/var/lib/mysql
 socket=/var/lib/mysql/mysql.sock
 server_id = 1
 expire_logs_days = 3
 # Disabling symbolic-links is recommended to prevent assorted security risks
 symbolic-links=0
 log-error=/var/log/mysqld.log
 pid-file=/var/run/mysqld/mysqld.pid

不過安裝完成後,密碼為隨機密碼,需要重置密碼。

4. 啟動mysql服務

service mysqld restart

重置密碼

 [root@localhost ~]# grep "password" /var/log/mysqld.log 

可以看到 輸入 mysql -u root -p 密碼 進入 第一次登陸 ,需要重置密碼 要不什麼也不能操作

接下來重置密碼:5.7.20 為了安全密碼 必須包含 數字字母符號

踩過的坑啊,設定了好幾次。還有這ip不能是% 不知道為什麼 反正第一次設定成%沒成功 登上去之後再改就可以改了。

把密碼改簡單的方法 https://www.jb51.net/article/150472.htm

alter user 'root'@'localhost' identified by 'Root!!2018'; 

最後記得重新整理許可權;

flush privileges

也可以 直接再新增新使用者

 CREATE USER ‘root‘@‘%‘ IDENTIFIED BY ‘您的密碼‘;

 grant all on *.* to 'root001'@'%' identified by 'Root@@' with grant option;

增加root使用者指定可以任意IP登入,如果想限制只能讓指定IP登入請把%替換成IP地址

問題:如果發現找不到密碼!!!!!

解決:只能通過忘記密碼的方式修改密碼!!! 在安裝的過程中發現找不到密碼???折騰了好長時間 通過修改密碼找回之後發現、原來之前安裝的資料庫在了,就沒有生產新的資料庫!!用的還是之前的配置。

2.看mysql啟動了沒?初始化資料庫了沒? 一般直接啟動 資料庫 就可以 用grep "password" /var/log/mysqld.log 看到隨機密碼了

修改MySQL的登入設定:

#vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables 儲存並且退出vi。

重新啟動mysqld

重新啟動mysqld
 #/etc/init.d/mysqld restart ( service mysqld restart )
 use mysql 
 update user set password=password("12345") where user="root";
 mysql 5.7的資料庫沒有了password欄位 用的是authentication_string欄位
mysql> update mysql.user set authentication_string=password('root') where user='root' ;
 flush privileges;

修改密碼之後在改回來。

總結

以上所述是小編給大家介紹的CentOS 7 下使用yum安裝MySQL5.7.20 最簡單方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!