官網(wǎng)下載地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
下載版本:mysql-5.7.25-winx64.zip
背景:今天給我的老年聯(lián)想本本加了4G內(nèi)存,又換成了250G的固態(tài)盤柳击,然后就有了重裝win10系統(tǒng)猿推、重裝開(kāi)發(fā)工具的過(guò)程,安裝mySQL的時(shí)候出現(xiàn)以下幾個(gè)問(wèn)題捌肴,在此記錄希望大家不要踩坑蹬叭。
下載好zip文件后,解壓放在你想放的地方状知,
我的mySQL放在這個(gè)路徑下:D:\install\mysql\mysql-5.7.25-winx64秽五,
默認(rèn)沒(méi)有生成my.ini文件,所以需要在根目錄下新建文件my.ini(最終完整文檔內(nèi)容見(jiàn)最下方)饥悴,保存后坦喘,
執(zhí)行 mysql install,
(1) 以下是出現(xiàn)的問(wèn)題描述:
執(zhí)行 mysqld --initialize --console
--initialize specified but the data directory has files in it. Aborting.
不需要設(shè)置datadir存儲(chǔ)數(shù)據(jù),因?yàn)閙ysql會(huì)自動(dòng)生成一個(gè)文件夾存放數(shù)據(jù)(和bin目錄同級(jí)的data文件夾)西设。如果設(shè)置了瓣铣,在data文件夾下生成了一些數(shù)據(jù)后,導(dǎo)致再次初始化產(chǎn)生報(bào)錯(cuò)如下:
圖1
解決辦法:
刪除與bin同級(jí)的文件夾data下的所有文件(注意贷揽,如果有重要信息請(qǐng)?zhí)崆皞浞荩┨男Γ賵?zhí)行以下命令:
mysqld --initialize --console
就不會(huì)報(bào)錯(cuò)了,初始化完成,會(huì)給root賬號(hào)生成一個(gè)隨機(jī)密碼禽绪,如上圖
執(zhí)行命令: mysql -u root -p蓖救,回車后再輸入上面的密碼,就進(jìn)入mysql環(huán)境
(2).當(dāng)需要修改密碼或執(zhí)行其他操作時(shí)一直提示以下錯(cuò)誤:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
解決辦法如下:
1.SET PASSWORD = PASSWORD('新密碼');
2.ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; #(EXPIRE NEVER:密碼永不過(guò)期)
3.FLUSH PRIVILEGES;? #(更新權(quán)限:修改了root密碼丐一,在不重啟mysql服務(wù)的情況下直接生效);
4.quit #退出藻糖,再使用新密碼登錄就OK了
注意:如果你修改了my.ini,為了使配置生效库车,需要重啟mysql服務(wù):
使用以下兩條命令:
net stop mysql?
net start mysql
最后附上我的完整的my.ini 巨柒,包含log日志地址設(shè)置:
[client]
port=3306
default-character-set=utf8
[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[mysqld]
#log
general-log=0
log-output=FILE
slow-query-log=1
long_query_time=1
slow_query_log_file="D:\install\mysql\log\log_slow.log"
log_error="D:\install\mysql\log\log_err.log"
#log="D:\install\mysql\log\logDora.log"
#開(kāi)啟查詢緩存
explicit_defaults_for_timestamp=true
# 設(shè)置3306端口
port = 3306
# 設(shè)置mysql的安裝目錄
basedir=D:/install/mysql/mysql-5.7.25-winx64
# 設(shè)置 mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)的存放目錄,MySQL 8+ 不需要以下配置,系統(tǒng)自己生成即可洋满,否則有可能報(bào)錯(cuò)
#datadir=D:\install\mysql\sqldata
# 允許最大連接數(shù)
max_connections=1000
max_user_connections=500
# Set the SQL mode to strict
sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
# 服務(wù)端使用的字符集默認(rèn)為utf8字符集
character-set-server=utf8
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
collation-server=utf8_general_ci