1、停止MySQL服務
# service mysqld stop
2、查看系統中是否已安裝MySQL服務
# rpm -qa | grep mysql ? ?或 ? ?yum list installed | grep mysql
3、卸載舊版MySQL
# yum remove mysql mysql-*
4、 移除命令執行后,可再看看是否有殘余的mysql
5、 列出資源庫中特定的可以安裝或更新以及已經安裝的rpm包
(這里使用的系統是cento6.5,其中的mysql包的版本為5.1.73-8.el6_8)
# yum list mysql ? ? // 列出名為mysql的包
6、 下載安裝最新的rpm文件
這里使用的版本是mysql57-community-release-el6-7.noarch.rpm
如果提前得到了這個文件,這里可以使用yum localinstall mysql57-community-release-el6-7.noarch.rpm從本地安裝)
# rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
7、 再一次查看資源庫中mysql相關的包
# yum list mysql* ? ? ?// 列出以mysql 開頭的包
這里可以看到多了下面的信息:
mysql-community-bench.x86_64? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-client.i686? ? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-common.i686? ? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-devel.i686? ? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-devel.x86_64? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-embedded.i686? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-embedded.x86_64? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-embedded-devel.i686? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-embedded-devel.x86_64? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-libs.i686? ? ? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-libs-compat.i686? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-libs-compat.x86_64? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
mysql-community-test.x86_64? ? ? ? ? ? ? ? ? 5.6.36-2.el6? ? ? mysql56-community
......
8、安裝MySQL(過程中問詢是否yes,一路y下去)
# yum install mysql-community-server
注意:
# yum install mysql? //如果只是安裝mysql的話,會出以下結果
# service mysqld start
# mysqld: unrecognized service? ? //報錯,這是因為沒有安裝mysql-server
# yum install mysql-server? ? ? ? //安裝上即可解決問題
9、 安裝完成后,輸入命令查看MySQL版本號
mysql -V
10、安裝完畢后,在? /var/log/mysqld.log 文件中會自動生成一個隨機的密碼
我們需要先取得這個隨機密碼,以用于登錄 MySQL 服務端:
grep "password" /var/log/mysqld.log
打印如下內容:
A temporary password is generated for root@localhost: hilX0U!9i3_6
//如果找不到,可先跳過這一步
我們復制 root@localhost: 后面的隨機字符串,這個字符串就是 MySQL 在安裝完成后為我們隨機生成的密碼;
11、啟動MySQL
service mysqld start
第一次啟動比較慢,因為它會自己做初始化,耐心等待即可。
如果啟動失敗,提示“MySQL Daemon failed to start”,可以嘗試先初始化mysql,輸入命令:mysqld --initialize。
如果初始化提示:
2015-12-22T07:49:45.386095Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-12-22T07:49:45.388125Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2015-12-22T07:49:45.388153Z 0 [ERROR] Aborting
說明數據文件夾已被創建,直接刪除,讓mysql自己創建即可。
輸入命令:
# rm -rf /var/lib/mysql
刪除后,注意:然后不需要再初始化了,直接啟動mysql,它會自己初始化。
輸入命令:
# service mysqld start
11、登錄到 MySQL 服務端
進入mysql后,第一件事件就是要你改默認密碼。
默認密碼見第10步,如果沒有找到密碼,那么默認為空
mysql -u root -p [password]
打印出 MySQL 的版本即表明已登錄;
設置用戶 root 可以在任意 IP 下被訪問:
grant all privileges on *.* to root@"%" identified by "新密碼";
設置用戶 root 可以在本地被訪問:
grant all privileges on *.* to root@"localhost" identified by "新密碼";
刷新權限使之生效:
flush privileges;
12、更新 MySQL 的用戶密碼(在mysql命令行下)
set password = password('new_password');
注意:由于 MySQL5.7 采用了密碼強度驗證插件 validate_password,故此我們需要設置一個有一定強度的密碼;
輸入 exit 后用新密碼再次登錄看看吧!
13、設置mysql為開機啟動
# chkconfig --list ? ? ? ? ? ?// 顯示服務列表
如果看到mysqld的服務,并且3,4,5都是on的話則成功,如果是off,則鍵入
# chkconfig --level 345 mysqld on
# reboot? ? ? ? ? ? ? ? ? ? ? //重啟電腦
# netstat -na | grep 3306? ? //如果看到有監聽說明服務啟動了。也可以用:
或
#service mysqld status? ? ? //查看mysql狀態
注:mysql中每個命令后都要以分號;結尾