MySQL 初始化安裝與使用
第一次使用MySQL,差點沒有吐血身亡,各種 ̄□ ̄||,必須來個文章吐槽一下,下面正題:
前序:
1、環境 win10 ,64位
2、MySQL下載地址:(曲折~)5.7.23
正文:
1、下載的zip解壓,直接雙擊 執行 bin/mysql.exe 安裝報錯,一閃而過?
//-----------------攻關開始----------------------------------------------------
1)以 管理員身份 執行 cmd。
【我的mysql解壓地址: D:\JavaWebSoftware\mysql-5.7.23-winx64】
指令【紅色標註】按下方的執行:
C:\WINDOWS\system32>d:
//cd bin目錄
D:\>cd D:\JavaWebSoftware\mysql-5.7.23-winx64\bin
//安裝檔案
D:\JavaWebSoftware\mysql-5.7.23-winx64\bin>mysqld --install MySQL
Service successfully installed.
//啟動服務
D:\JavaWebSoftware\mysql-5.7.23-winx64\bin>net start mysql
MySQL 服務正在啟動 ..
MySQL 服務無法啟動。
服務沒有報告任何錯誤。
請鍵入 NET HELPMSG 3534 以獲得更多的幫助。
//初始化
D:\JavaWebSoftware\mysql-5.7.23-winx64\bin>mysqld --initialize
2018-09-14T07:40:02.740112Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-09-14T07:40:02.742148Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2018-09-14T07:40:02.742499Z 0 [ERROR] Aborting
//刪除自己建立的data資料夾,再次初始化
D:\JavaWebSoftware\mysql-5.7.23-winx64\bin>mysqld --initialize
//再次啟動服務
D:\JavaWebSoftware\mysql-5.7.23-winx64\bin>net start mysql
MySQL 服務正在啟動 .
MySQL 服務已經啟動成功。
2、cmd中初始位置直接啟用 mysql 命令?
此電腦-->屬性 --> 高階設定 -->環境變數 -->path,新增mySQL 路徑。(到 bin目錄,如D:\JavaWebSoftware\mysql-5.7.23-winx64\bin)
3、沒有視覺化介面處理?
1)SQLyog - 64 bit來一個(重點是 註冊碼)
名稱:doooo;
證書祕鑰:8d8120df-a5c3-4989-8f47-5afc79c56e7c;
2)推薦使用 MySQL Workbench
4、win10系統登入mysql時報錯1045的解決方案
1)解壓的5.7系列 根目錄 沒有 my.ini ?自己建立一個,具體內容如下:
[mysql]
# 設定mysql客戶端預設字符集
default-character-set=utf8
[mysqld]
#設定3306埠
port = 3306
# 設定mysql的安裝目錄
basedir=D:\\JavaWebSoftware\\mysql-5.7.23-winx64
# 允許最大連線數
max_connections=200
# 服務端使用的字符集預設為8位元編碼的latin1字符集
character-set-server=utf8
# 建立新表時將使用的預設儲存引擎
default-storage-engine=INNODB
#開啟查詢快取
explicit_defaults_for_timestamp=true
skip_grant_tables
2)請注意上述 標紅文字
剩餘操作,請參考文章:
3)mySql命令不能執行的,請配置 環境變數。
4)mysql修改密碼:【注意SQL語句要加 ;】
新安裝的MySQL5.7,登入時提示密碼錯誤,安裝的時候並沒有更改密碼,後來通過免密碼登入的方式更改密碼,輸入
update mysql.user set password=password('root') where user='root'
時提示 ERROR 1054 (42S22): Unknown column 'password' in 'field list',
原來是mysql資料庫下已經沒有 password 這個欄位了,password欄位改成了 authentication_string
所以更改語句替換為update mysql.user set authentication_string=password('xx') where user='root' ; 即可
(綠色標註為改為自己的密碼)
當出現 以下標註,表示成功。
Query OK, 1 row affected, 1 warning (0.03 sec)
Rows matched: 1 Changed: 1 Warnings: 1
執行命令: mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec) 【成功】
5)MySQL Workbench
mysql5.7免安裝版報錯處理You must reset your password using ALTER USER statement before executing
安裝完mysql 之後,登陸以後,不管執行任何命令,總是提示這個
step 1: SET PASSWORD = PASSWORD(‘your new password‘);
step 2: ALTER USER ‘root‘@‘localhost‘ PASSWORD EXPIRE NEVER;
step 3: flush privileges;
完成以上三步退出再登,使用新設定的密碼就行了,以上除了紅色的自己修改成新密碼外,其他原樣輸入即可。