河北科技師范學(xué)院 趙學(xué)作
MySQL 8.0版本擁有體積小巧、讀取和存儲速度快的特點,而且完全脫離MylSAM 存儲引擎,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL 8.0作為網(wǎng)站數(shù)據(jù)庫。
第一步:準(zhǔn)備工作。
如果這臺服務(wù)器中已安裝有MySQL 老版本,應(yīng)該先停止MySQL 服務(wù)并卸載,卸載時應(yīng)該注意路徑問題。
如果服務(wù)器系統(tǒng)是Win2008 及其以下版本,還應(yīng)該下載并安裝VC2015 補(bǔ)?。?/p>
第二步:下載Windows 64 位 的mysql 壓 縮 包:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-winx64.zip,并解壓到一個文件夾中,如:D:mysql8,然后添加解壓目錄中mysqld.exe 所在bin目錄到環(huán)境變量:
右鍵“計算機(jī)”→“屬性”→“高級系統(tǒng)設(shè)置”→“環(huán)境變量”,在“用戶變量”的“Path”路徑中添加“;D:mysql8in”。
第三步:添加my.ini 配置文件,內(nèi)容如下:
第四步:在解壓目錄D:mysql8 下 執(zhí) 行 mysqld--initialize 初始化數(shù)據(jù)庫,如果一開始就存在data文件夾請先刪除它。執(zhí)行完成后,臨時密碼就是在新生成的data 文件夾中的擴(kuò)展名為.err 文件主名。
第五步:執(zhí)行mysqld--install 安裝MySQL 服務(wù),安裝完成后,可以從系統(tǒng)服務(wù)中啟動MySQL 服務(wù)。
第六步:在命令窗口中用mysql 命令測試是否可以正常登錄。
如果不能登錄并提示:Access denied for user‘root'@'localhost' (using password:YES),說明密碼有誤,解決方式如下:
1.以管理員的身份進(jìn)入到cmd 命令窗口,并cd 到MySQL8 安裝路徑的bin 目錄下。
2.關(guān)閉MySQL 服務(wù):net stop mysql。
3.使用 --skip-granttables 配置項的方式,跳過權(quán)限驗證進(jìn)入mysql。
注意:MySQL8.x 版本不支持直接修改my.ini 配置文件的內(nèi)容,會導(dǎo)致“MySQL 服務(wù)無法啟動,服務(wù)沒有報告任何錯誤”。
命令:mysqld --console--shared-memory --skipgrant-tables
圖1 查看安裝版本
說明:若缺少 --sharedmemory,則會提示 錯誤:“TCP/IP,--sharedmemory,or -name-pipe should be configured on NT OS”。
4.保持第3 步驟窗口不關(guān)閉,再以管理員身份打開另一個cmd 窗口并進(jìn)入到MySQL 安裝路徑下的bin 目錄,輸入mysql,此時便能成功登錄。
5.刷新權(quán)限:flush privileges;
6.修改密碼:alert user 'root'@'localhost'identified by '新密碼';
7.修改成功后,正常啟動MySQL 服務(wù),使用用戶名、密碼進(jìn)行登陸校驗是否設(shè)置成功。
啟動MySQL 服務(wù):net start mysql
登陸命令:mysql -uroot-p 密碼
第一步:準(zhǔn)備工作。
查看MySQL 安裝,如果這臺服務(wù)器中安裝有MySQL老版本,應(yīng)該先停止MySQL服務(wù)并卸載,如圖1。
執(zhí)行完上述命令之后再次執(zhí)行rpm -qa|grep -i mysql,會發(fā)現(xiàn)已經(jīng)卸載完成,如果存在etc/my.cnf 這個文件的話一定要刪除掉。
第二步:下載64 位的MySQL 壓縮包:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz,并上傳到/usr/local 目錄中。
第三步:直接執(zhí)行解壓命令,完成解壓,解壓之后會得到一個文件夾,mysql-8.0.16-linuxglibc2.12-x86_64,為方便操作可以改名成mysql,然后再建立數(shù)據(jù)文件夾data。
第四步:
建立相關(guān)用戶組及用戶(如果已經(jīng)存在,可以忽略)
圖2 初始化數(shù)據(jù)
圖3 賬號認(rèn)證方式
需要注意的是,MySQL8 默認(rèn)的認(rèn)證插件為Caching_sha2_password,原先采用的是mysql_native_password,這使得原來的Navicat、phpMyAdmin 等連接出現(xiàn)認(rèn)證失敗,我們還需要把root帳號的認(rèn)證方式改回原來的mysql_native_password 方式并重新設(shè)置密碼,從而保證Navicat、phpMyAdmin 等 能 正常連接,MySQL 8.0 的授權(quán)寫法跟以前版本是有所區(qū)別的: