今天在安裝一個壓縮包mysql-5.7.19時,碰到了一系列問題,現將這些問題羅列出來:html
解壓後,把"D:\Program\mysql-5.7.19-winx64\bin"配置到環境變量path下,在cmd中執行登陸操做: mysql -u root -p時,出現這個問題:mysql
在網上搜索資料,查到https://blog.csdn.net/lianzhang861/article/details/78919060,解決方案是: mysqld --install, 安裝完net start mysql
sql
這下又貌似行不通了,https://jingyan.baidu.com/article/4e5b3e19245cec91901e24bc.html,這個答案告訴咱們要修改註冊表工具
HKEY_LOCAL_MACHINE編碼
SYSTEMspa
CurrentControlSet.net
services3d
MySQLcode
ImagePathserver
個人默認值是C:\Program Files\MySQL\MySQL Server 5.7\mysqld,找到該路徑,並無發現有MySQL文件,咱們將它改成D:\Program\mysql-5.7.19-winx64\bin\mysqld,這個是我真正安裝MySQL的路徑,來,再試一下
瞬間尷尬了,咱們找到控制面板--管理工具--服務,決定去啓動它時,發現:
感謝此文做者http://www.javashuo.com/article/p-suazustg-bk.html,讓我迷途知返,因爲個人mysql根目錄下沒有data目錄和my.ini配置文件,因而新建了一個my.ini,內容爲:
注意:這裏面要提一句,basedir=後面是你安裝的mysql的bin目錄所在的路徑!
[mysql] # 設置mysql客戶端默認字符集 default-character-set=utf8 [mysqld] #設置3306端口 port = 3306 # 設置mysql的安裝目錄 basedir=D:\\Program\mysql-5.7.19-winx64 # 容許最大鏈接數 max_connections=200 # 服務端使用的字符集默認爲8比特編碼的latin1字符集 character-set-server=utf8 # 建立新表時將使用的默認存儲引擎 default-storage-engine=INNODB
好,這下子咱們按照做者說的,不要新建data目錄,而是讓mysql自動生成,在cmd中執行
這下看似好了,實際還有一個問題
參照這篇文章https://blog.csdn.net/keepd/article/details/77151006,找到一個方法,就是在my.ini配置文件中最後一行添加:
skip-grant-tables
保存,而後在cmd中執行
登陸musql mysql -u root 此處注意不要加-p 修改密碼,mysql5.7用此語法 use mysql ; update mysql.user set authentication_string=password('123456') where user='root' ; 回到第二步驟去掉加上的,保存 skip-grant-tables
退出
exit
重啓mysql服務
net stop mysql
net start mysq
哎,這時候才能夠了,看了我一個多小時,之後仍是少用壓縮版。