環境:
win10(本地)
MySQL版本:mysql-5.7.26-winx64
一、卸載
1.停止MySQL服務
2.刪除MySQL安裝目錄
3.清理MySQL相關注冊表
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application/MySQL
如果沒有相應的文件夾,就不用刪除;最后Ctrl+F輸入MySQL再次查找一遍,能找到相關的注冊信息就刪除
4.重啟
二、安裝
1.去Oracle官網下載社區版(mysql-5.7.26-winx64.zip解壓版)
MySQL下載地址:https://downloads.mysql.com/archives/community/
2.解壓下載的文件(這里解壓到了D:\MySQL-5.7.26)
--MySQL-5.7.26
|--bin
|--docs
|--include
|--lib
|--share
|--COPYING
|--README
3.創建數據的存放目錄data,為MySQL新增配置信息my.ini
在D:\MySQL-5.7.26創建數據存放目錄data,新建配置文件my.ini
--MySQL-5.7.26
|--bin
|--docs
|--data
|--include
|--lib
|--share
|--COPYING
|--README
|--my.ini
my.ini內容添加如下(簡單版配置):
[client] #設置mysql客戶端連接服務端時默認使用的端口 port=3306 default-character-set=utf8 [mysql] # 設置mysql客戶端默認字符集 default-character-set=utf8 [mysqld] #設置3306端口 port=3306 #設置mysql的安裝目錄 basedir=D:\MySQL-5.7.26 #設置mysql數據庫的數據的存放目錄 datadir=D:\MySQL-5.7.26\data #允許最大連接數 max_connections=200 #允許連接失敗的次數,防止有人從該主機試圖攻擊數據庫系統 max_connect_errors=10 #服務端使用的字符集默認為UTF8(默認為8比特編碼的latin1字符集) character-set-server=utf8 #創建新表時將使用的默認存儲引擎 default-storage-engine=INNODB #默認使用mysql_native_password插件認證(可以使用除mysql.user系統表之外的憑據的身份驗證,如PAM,Windows登錄ID,LDAP或Kerberos) default_authentication_plugin=mysql_native_password #忘記密碼時使用 #skip-grant-tables
4.以管理員身份調出powershell命令行終端界面
5.將目錄切換到MySQL解壓bin目錄下,執行 mysqld install,安裝MySQl服務
PS C:\WINDOWS\system32> cd D:\MySQL-5.7.26\bin\ PS D:\MySQL-5.7.26\bin> .\mysqld.exe install Service successfully installed.
結果顯示Service successfully installed服務安裝成功
6.初始化data目錄
PS D:\MySQL-5.7.26\bin> .\mysqld.exe --initialize-insecure
(注:mysqld --initialize-insecure自動生成無密碼的root用戶,mysqld --initialize自動生成帶隨機密碼的root用戶)
7.net start mysql啟動MySQL服務
PS D:\MySQL-5.7.26\bin> net start mysql
MySQL 服務正在啟動 .
MySQL 服務已經啟動成功。
8.修改root用戶密碼
PS D:\MySQL-5.7.26\bin> .\mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.26 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> alter user 'root'@'localhost' identified by '123456'; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye
9. 給root用戶開啟遠程訪問權限
為了方便,設置好MySQL環境變量后執行
#連接數據庫 PS C:\Users\cchengyyj> mysql -uroot -p Enter password: ****** #使用mysql庫 mysql> use mysql; Database changed #查詢用戶表命令 mysql> select User,authentication_string,Host from user; +---------------+-------------------------------------------+-----------+ | User | authentication_string | Host | +---------------+-------------------------------------------+-----------+ | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost | +---------------+-------------------------------------------+-----------+ 3 rows in set (0.00 sec) #授權遠程登陸 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' ; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) #再次查詢用戶表命令 mysql> select User,authentication_string,Host from user; +---------------+-------------------------------------------+-----------+ | User | authentication_string | Host | +---------------+-------------------------------------------+-----------+ | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost | | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | % | +---------------+-------------------------------------------+-----------+ 4 rows in set (0.00 sec)