使用MySQL的yum源安裝MySQL5.7數(shù)據(jù)庫(kù)的方法
一、安裝配置MySQL的yum源
# 安裝MySQL的yum源,下面是RHEL6系列mysql5.6的下載地址:
wget http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
下面是RHEL6系列mysql5.7的下載地址:
wget http://repo.mysql.com//mysql57-community-release-el6-8.noarch.rpm
安裝yum源。
rpm -ivh mysql57-community-release-el6-8.noarch.rpm
清除緩存
yum clean all
下面幾個(gè)命令可以順便學(xué)習(xí)一下
# 安裝yum-config-manager
yum install yum-utils -y
# 禁用MySQL5.6的源
yum-config-manager --disable mysql56-community
# 啟用MySQL5.7的源
yum-config-manager --enable mysql57-community-dmr
# 用下面的命令查看是否配置正確
yum repolist enabled | grep mysql
二、yum安裝MySQL5.7
本次安裝的版本是5.7.14,測(cè)試環(huán)境上原來(lái)有5.1.73版本,是升級(jí)安裝.
yum install mysql
三、初始化并啟動(dòng)MySQL
service mysqld start
直接啟動(dòng)服務(wù)會(huì)報(bào)錯(cuò),如下:
[root@localhost lib]# service mysqld start
MySQL Daemon failed to start.
正在啟動(dòng) mysqld: [失敗]
解決方法:新版本要求先初始化mysql。
初始化mysql
# mysqld --initialize --user=mysql --datadir=/var/lib/mysql
或者
# mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql
另外,當(dāng)你是以mysql的賬戶(hù)登錄并執(zhí)行程序的情況下,你可以將--user選項(xiàng)從命令中去掉。
通過(guò)官方文檔我們可以知道,如果我是root身份登錄Linux系 統(tǒng),可以執(zhí)行:mysqld --initialize --user=mysql或者mysqld --initialize-insecure --user=mysql。如果我是以mysql用戶(hù)登錄Linux系統(tǒng),可以執(zhí)行:mysqld --initialize或者mysqld --initialize-insecure。
不管在哪個(gè)平臺(tái)上,使用--initialize選項(xiàng)就是以“默認(rèn)安全模式”來(lái)進(jìn)行安裝的(即包含一個(gè)隨機(jī)的root初始密碼的生成)。在這種情況下,密 碼是被標(biāo)志為過(guò)期的,你需要選擇一個(gè)新的密碼。使用--initialize-insecure選項(xiàng),沒(méi)有root密碼生成;如果是這樣的話,在服務(wù)器投 入生產(chǎn)使用之前,你需要及時(shí)地為賬戶(hù)指定密碼。
使用--initialize會(huì)為root賬戶(hù)生成一個(gè)隨機(jī)的初始密碼,我們可以使用命令:mysql -u root -p,然后輸入密碼來(lái)登錄MySQL。使用--initialize-insecure不會(huì)為root賬戶(hù)生成一個(gè)隨機(jī)的初始密碼,我們可以使用命 令:mysql -u root --skip-password直接登錄MySQL。
我初始化過(guò)程中遇到報(bào)錯(cuò)如下:
[ERROR] --initialize specified but the data directory has files in it. Aborting.
[ERROR] Aborting
解決方法:
rm -rf /var/lib/mysql/*
原因分析:
mysqld服務(wù)會(huì)檢查數(shù)據(jù)目錄是否存在,如下:
如果數(shù)據(jù)目錄不存在,mysqld則會(huì)創(chuàng)建它。
如果數(shù)據(jù)目錄存在,且不是空目錄(即包含有文件或子目錄),mysqld會(huì)顯示一條錯(cuò)誤信息并中止:
[ERROR] --initialize specified but the data directory exists. Aborting.
遇到這種情況,就將數(shù)據(jù)目錄刪除或重命名后,重新再試一次。
總之: 初始化之前,先檢查一下數(shù)據(jù)目錄是否存在,執(zhí)行命令:ls -l /var/lib|grep mysql。若有,則執(zhí)行命令:
rm -rf /var/lib/mysql,將其刪除;
或者執(zhí)行命令:mv /var/lib/mysql /var/lib/newname,將其重命名為newname,就可以了。
再次執(zhí)行初始化命令,成功執(zhí)行.
[Note] A temporary password is generated for root@localhost: ihey0gFhTT;f
記住初始化生成的臨時(shí)的root密碼,登錄時(shí)會(huì)用到
初始化完成之后,直接啟動(dòng)service mysqld start
四、連接MySQL并修改密碼
初始化時(shí)會(huì)生成一個(gè)臨時(shí)的root密碼,且登錄之后必須先改密碼,然后才能執(zhí)行命令.
mysql -uroot -p 臨時(shí)密碼
登錄之后,如果不立即改密碼,執(zhí)行命令時(shí)報(bào)如下錯(cuò)誤:
mysql> show databases ;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改密碼: set password=password('123@Zxc');
或者:
alter user 'root'@'localhost' identified by '123@Zxc';
再次執(zhí)行成功.
從官方文檔中我們了解到要用ALTER USER語(yǔ)句可以修改密碼。登錄MySQL后,執(zhí)行語(yǔ)句:
alter user 'root'@'localhost' identified by '123@Zxc';
就將root賬戶(hù)的密碼修改為123@Zxc了。
MySQL對(duì)用戶(hù)密碼安全性有所加強(qiáng),所以設(shè)置的密碼必須包含有數(shù)字,大寫(xiě)字母,小寫(xiě)字母,特殊符號(hào),如果你設(shè)置的密碼過(guò)于簡(jiǎn)單,會(huì)提示:
ERROR 1819 (HY000): Your password does NOT satisfy the CURRENT policy requirements。
以上所述是小編給大家介紹的使用MySQL的yum源安裝MySQL5.7數(shù)據(jù)庫(kù)的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
MySQL對(duì)JSON數(shù)據(jù)進(jìn)行查詢(xún)實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于MySQL對(duì)JSON數(shù)據(jù)進(jìn)行查詢(xún)的相關(guān)資料,MySQL支持使用JSON類(lèi)型存儲(chǔ)數(shù)據(jù),并提供了多種查詢(xún)JSON數(shù)據(jù)的方法,需要的朋友可以參考下2023-07-07MySQL對(duì)JSON類(lèi)型字段數(shù)據(jù)進(jìn)行提取和查詢(xún)的實(shí)現(xiàn)
本文主要介紹了MySQL對(duì)JSON類(lèi)型字段數(shù)據(jù)進(jìn)行提取和查詢(xún)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04mac系統(tǒng)OS X10.10版本安裝最新5.7.9mysql的方法
這篇文章給大家介紹mac系統(tǒng)OS X10.10版本安裝最新5.7.9mysql的方法,本文分步驟純文字說(shuō)明,介紹的非常詳細(xì),具有參考價(jià)值,在此分享供大家參考2015-10-10MySQL數(shù)據(jù)庫(kù)MyISAM存儲(chǔ)引擎轉(zhuǎn)為Innodb的方法
mysql數(shù)據(jù)庫(kù)存儲(chǔ)引擎為MyISAM的時(shí)候,在大訪問(wèn)量的情況下數(shù)據(jù)表有可能會(huì)出現(xiàn)被鎖的情況,這就會(huì)導(dǎo)致用戶(hù)連接網(wǎng)站時(shí)超時(shí)而返回502,此時(shí)就需要MySQL數(shù)據(jù)庫(kù)MyISAM存儲(chǔ)引擎轉(zhuǎn)為Innodb,這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)MyISAM存儲(chǔ)引擎轉(zhuǎn)為Innodb的方法,需要的朋友可以參考下2014-06-06分析MySQL中索引引引發(fā)的CPU負(fù)載飆升的問(wèn)題
這篇文章主要介紹了分析MySQL中索引引引發(fā)的CPU負(fù)載飆升的問(wèn)題,文中提到了獨(dú)立索引所帶來(lái)的巨大CPU負(fù)擔(dān),以提醒在MySQL中使用索引要注意CPU負(fù)載的問(wèn)題,需要的朋友可以參考下2015-05-05MySQL百萬(wàn)級(jí)數(shù)據(jù),怎樣做分頁(yè)查詢(xún)
這篇文章主要介紹了MySQL百萬(wàn)級(jí)數(shù)據(jù),怎樣做分頁(yè)查詢(xún)?今天咱們就來(lái)聊聊這個(gè)話題,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10