Mysql 5.7.19 免安裝版遇到的坑(收藏)
1、從官網(wǎng)下載64位zip文件。
2、把zip解壓到一個(gè)位置,此位置為安裝為安裝位置
3、如果有以前的mysql 如果是install的,去控制面板卸載,還需要?jiǎng)h除以前mysql留下來(lái)的殘留文件。如果是免安裝的,用mysqld -remove
命令刪除 ,卸載以前的文件記得要保留里面的data文件夾和my.ini文件。(data文件里面的東西可以恢復(fù)用;my.ini文件里面是配置參考配置)
以前有mysql服務(wù)的話 需要去停掉mysql服務(wù)
4、新建一個(gè)my.ini文件。里面內(nèi)容和以前一樣。要修改:
no-beep(用#注釋掉) basedir="C:/Program Files/MySQL/mysql-5.7.19-winx64" datadir="C:/ProgramData/MySQL/mysql-5.7.19-winx64/data\"(生成新數(shù)據(jù)庫(kù)存放的地方) my.ini文件放到C:\mysql-5.7.19-winx64目錄下
5、執(zhí)行命令mysqld --initialize-insecure
出現(xiàn)2個(gè)問(wèn)題 文件 一個(gè)是vs2013 c++的 一個(gè)是動(dòng)態(tài)鏈接庫(kù)的。
百度找這2個(gè)文件
msvcr120.dll vcredist_x64 .exe
6、dll放到system32下,exe直接運(yùn)行后安裝即可。然后再次運(yùn)行第5步操作命令。
7、又提示沒(méi)有對(duì)應(yīng)目錄。(Errcode: 2 - No such file or directory)
8、去對(duì)應(yīng)目錄自己手動(dòng)生成文件夾試試。
9、創(chuàng)建完后第5步命令終于好用了。去查看對(duì)應(yīng)目錄是否已經(jīng)生成。
10、成功生成后,使用命令mysqld --install mysql
(--default-file=C:\mysql-5.7.19-winx64\my.ini,
添了這句話。啟動(dòng)服務(wù)器會(huì)啟動(dòng)不了。mysqld -remove
,重新安裝后不要帶此參數(shù),這次可以正常啟動(dòng))
11、顯示Service successfully installed
.說(shuō)明安裝成功??梢匀シ?wù)里看是否有mysql服務(wù)
12、啟動(dòng)服務(wù)
13、服務(wù)啟動(dòng)后需要登錄。但密碼是初始化的。所以我們要重新設(shè)置
14、在my.ini里[mysqld]下添加skip-grant-tables
,跳過(guò)權(quán)限,重啟服務(wù)
15、mysql -u root -p
直接就可以進(jìn)入了
16、UPDATE mysql.user SET authentication_string = PASSWORD('123456'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'
;
17、再去my.ini里把剛才添加的skip-grant-tables注釋掉,重啟服務(wù)
18、mysql -u root -p
再次進(jìn)入 輸入剛才設(shè)置的密碼
19、show databases
;如果出現(xiàn)1820或者1862等錯(cuò)誤。說(shuō)明密碼還需要重新設(shè)置 SET PASSWORD = PASSWORD('123456');
20、接下來(lái)是拷貝數(shù)據(jù)庫(kù)。拷貝數(shù)據(jù)庫(kù)之前需要停掉mysql服務(wù)
21、把以前的數(shù)據(jù)文件夾data,拷貝到C:/ProgramData/MySQL/mysql-5.7.19-winx64/data\
目錄下,記住最好不好覆蓋,把以前的data重命名即可,然后重新開(kāi)啟mysql服務(wù)
22、管理員命令下啟動(dòng)CMD,執(zhí)行命令:
mysql_upgrade -u root -p --force
以前的數(shù)據(jù)恢復(fù)
23、注意以前mysql.user表里如果沒(méi)有'root'@'%',代表遠(yuǎn)程不可以訪問(wèn),需要修改遠(yuǎn)程訪問(wèn)或者新建一個(gè)'root'@'%'('root'@'%'代表遠(yuǎn)程可以用root訪問(wèn),'root'@'loaclhost'代表只有本地可以訪問(wèn))
24、use mysql;
update user set host = '%' where user = 'root'; flush privileges; (下面步驟可以省略) select host, user from user; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; flush privileges;
25、設(shè)置好后其他機(jī)器可以訪問(wèn),建議最好新增一個(gè)'root'@'%',不是將以前的localhost改成%,這樣本地就不可以訪問(wèn)了。
注意:修改了設(shè)置以后最好不要更換data,犯了一個(gè)錯(cuò)誤。把'root'@'loaclhost'改成了'root'@'%'后,然后把數(shù)據(jù)庫(kù)文件拷貝過(guò)來(lái)。但是此時(shí)提示local登錄不了。應(yīng)該是修改了設(shè)置以后不讓本地登錄了。所以要先把數(shù)據(jù)庫(kù)拷貝過(guò)來(lái)后,并把數(shù)據(jù)都恢復(fù)好,再做修改或者設(shè)置授權(quán)等。另外5.7.19版本授權(quán)好像和以前不一樣了還需要查查。移動(dòng)數(shù)據(jù)庫(kù)的時(shí)候移動(dòng)要切記備份。
my.ini文件如果拷貝以前的有可能有問(wèn)題,好像最大連接數(shù)的問(wèn)題。下面給個(gè)實(shí)例:
[mysqld] port=3306 basedir="C:/Program Files/MySQL/mysql-5.7.19-winx64" datadir="C:/ProgramData/MySQL/mysql-5.7.19-winx64/data\" max_connections=1000 character-set-server=utf8 default-storage-engine=INNODB lower_case_table_names = 1 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #skip-grant-tables [client] port=3306 default-character-set=utf8 [mysql] default-character-set=utf8
總結(jié)
以上所述是小編給大家介紹的Mysql 5.7.19 免安裝版的遇到的坑,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
mysql_connect(): Connection using old (pre-4.1.1) authentica
MySQL錯(cuò)誤提示:Connection using old (pre-4.1.1) authentication protocol refused (client option ‘secure_auth’ enabled)解決辦法,需要的朋友可以參考下2014-04-04mysql中url時(shí)區(qū)的陷阱該如何規(guī)避詳解
最近在工作中發(fā)現(xiàn)一個(gè)問(wèn)題,是關(guān)于mysql中url時(shí)區(qū)的,發(fā)現(xiàn)這個(gè)陷阱如果大家不注意可能都會(huì)遇到,所以給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于mysql中url時(shí)區(qū)的陷阱該如何規(guī)避的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-08-08MySQL異?;謴?fù)之無(wú)主鍵情況下innodb數(shù)據(jù)恢復(fù)的方法
這篇文章主要介紹了MySQL異?;謴?fù)之無(wú)主鍵情況下innodb數(shù)據(jù)恢復(fù)的方法,結(jié)合實(shí)例形式分析了針對(duì)innodb引擎無(wú)主鍵的情況下恢復(fù)數(shù)據(jù)的步驟與相關(guān)技巧,需要的朋友可以參考下2016-04-04使用sysbench來(lái)測(cè)試MySQL性能的詳細(xì)教程
這篇文章主要介紹了使用sysbench來(lái)測(cè)試MySQL性能的詳細(xì)教程,包括介紹了從sysbench的編譯安裝到初始化測(cè)試庫(kù)環(huán)境等一系列操作,需要的朋友可以參考下2015-05-05MySQL 數(shù)據(jù)庫(kù)如何解決高并發(fā)問(wèn)題
這篇文章主要介紹了MySQL 如何處理高并發(fā),幫助大家更好的優(yōu)化MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2020-09-09Mysql中文漢字轉(zhuǎn)拼音的實(shí)現(xiàn)(每個(gè)漢字轉(zhuǎn)換全拼)
這篇文章主要介紹了Mysql中文漢字轉(zhuǎn)拼音的實(shí)現(xiàn),并且每個(gè)漢字會(huì)轉(zhuǎn)換全拼,使用Mysql自定義函數(shù)實(shí)現(xiàn),需要的朋友可以參考下2014-06-06