1、下載
https://dev.mysql.com/downloads/mysql/
2、解壓到固定位置,如D:\MySQL\mysql-5.7.24
3、添加my.ini文件
跟bin同級
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[mysqld]
#設置3306端口
port = 3306
# 設置mysql的安裝目錄
basedir=D:\MySQL\mysql-5.7.24
# 設置mysql數據庫的數據的存放目錄
datadir=D:\MySQL\mysql-5.7.24\data
# 允許最大連接數
max_connections=200
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
max_connect_errors=100
explicit_defaults_for_timestamp=true
4、初始化
mysqld --install mysql --defaults-file=D:\MySQL\mysql-5.7.24\my.ini
5、安裝服務
mysqld --install mysql
6、啟動
net start mysql
完成
遇到的問題
1、本地計算機上的MySQL服務啟動后停止。某些服務在未由其他服務或程序使用時將自動停止
或者控制台報錯
mysql 服務無法啟動
服務沒有報告任何錯誤
解決方案:
可以重新進行初始化,重新啟動,初始化之前要清空data文件夾(跟bin同級)
還可以刪除服務,重新注冊
mysqld -remove mysql
2、重新注冊會發現可能有其他錯誤如:TIMESTAMP with implicit DEFAULT value is deprecated
解決方法:
在my.ini 文件中的[mysqld]下添加一行explicit_defaults_for_timestamp=true。就可以了
這個語句的含義是 #開啟查詢緩存,這也是web緩存之一,對重復查詢只需要在緩存中讀取就可以,減少對數據庫的訪問。
3、登錄按照網上說的改密碼:
mysqladmin -uroot -p password 新密碼
發現也會報錯
mysql Access denied for user root@localhost錯誤
跳過密碼登錄,然后改表user
update user set password=password("新密碼") where user="root";
password
列名也可能是 authentication_string
然后刷新
flush privileges;
4、跳過密碼登錄的方法
MySQL配置文件my.ini中,在[mysqld]下添加skip-grant-tables,關閉MySQL服務並重新開啟;
輸入命令:mysql -u root -p
回車后,要求輸入密碼,直接回車跳過,則直接進入MySQL。
這樣設置之后,可以直接雙擊D:\MySQL5.7.10\bin下的mysql.exe啟動,而不用輸入命令。
5、登陸后,使用use mysql 還會報錯
You must reset your password using ALTER USER statement before executing this statement.
解決方案
step 1: SET PASSWORD = PASSWORD('your new password');
step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
step 3: flush privileges;
完成以上三步退出再登,使用新設置的密碼就行了,以上除了將your new password修改成新密碼外,其他原樣輸入即可
希望可以幫助到大家,大家也可關注我的公眾號方便在手機上進行查看