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.dllvcredist_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=3306basedir="C:/Program Files/MySQL/mysql-5.7.19-winx64"datadir="C:/ProgramData/MySQL/mysql-5.7.19-winx64/data/"max_connections=1000character-set-server=utf8default-storage-engine=INNODB lower_case_table_names = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #skip-grant-tables[client]port=3306default-character-set=utf8[mysql]default-character-set=utf8
總結(jié)
以上所述是小編給大家介紹的Mysql 5.7.19 免安裝版的遇到的坑,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VeVb武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選