近期更換服務器,在此再記錄一遍mysql 安裝教程
1.下載
https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-5.7.26.0.msi
可以用迅雷下載,速度會快一點,我的一篇博客有介紹:Oracle旗下軟件官網下載速度過慢解決辦法
2.安裝
雙擊運行程序
i accept -> next
選擇 custom 自定義
根據自己系統位數選擇
點擊剛才選擇的版本,進行自定義安裝位置->next
點擊Execute,安裝必要控件
I agree -> install
會發現在前面有一個勾->next
選擇服務器專用
設置端口號,默認3306,可以根據自己需求修改
選擇強加密或者以前加密方式
(這里得看自己使用的是什么版本的Navicat,如果以后使用的是低版本的,則選擇下面那個,使用以前的加密方式;如果使用最新版本的Navicat,則可以選擇強加密方式)
設置密碼
設置服務器名稱,一般默認即可
Execute
可能需要等待一段時間
都檢測通過后 點擊Finish 然后繼續Next 最后Finish即安裝完成
如果中間發生錯誤,可能你的數據庫版本高 與本系統不適配 可以降低數據庫版本 或者升級系統版本
配置:
打開my.ini文件,建議使用Notepad++,默認位置:
C:\ProgramData\MySQL\MySQL Server 8.0(這里ProgramData是隱藏文件夾,得先打開查看隱藏文件夾)
修改innodb_flush_log_at_trx_commit為0:
innodb_flush_log_at_trx_commit=0
修改innodb_buffer_pool_size為1G:(我這里服務器是2G內存)
innodb_buffer_pool_size=1G
數值一般修改為實際內存的一半即可
修改數據庫編碼為UTF8
在[client]
下添加default-character-set=utf8
[client] default-character-set=utf8
在[mysqld]
下添加character-set-server=utf8
[mysqld] character-set-server=utf8
重啟My SQL服務
遠程連接時發現報host * is not allowed to connect to this mysql server錯誤的話
命令行切換到目錄mysql 安裝文件夾bin下
運行mysql -uroot -p,輸入密碼
mysql -uroot -p
執行
use mysql;
執行
update user set host = '%' where user = 'root';
執行(刷新權限)
FLUSH PRIVILEGES;
可以查詢一下看一下結果:
select host from user where user = 'root';
查看看是否修改成功
如果使用的是低版本的Navicat,可能會報
Authentication plugin 'caching_sha2_password' cannot be loaded錯誤
出現這個原因是(也就是上面安裝的時候選擇的加密方式問題)
mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之后,加密規則是caching_sha2_password,
解決問題方法有兩種,一種是升級navicat驅動,一種是把mysql用戶登錄密碼加密規則還原成mysql_native_password.
這里介紹第二種方法:
命令行切換到目錄mysql 安裝文件夾bin下
運行mysql -uroot -p,輸入密碼
mysql -uroot -p
1.修改加密規則
如果沒有執行過我上面說的遠程連接修改的
update user set host = '%' where user = 'root';
的執行下面語句
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
如果已經做了修改的
執行下面語句
ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
password 替換為自己的密碼即可
2.修改密碼
同上,未執行過修改的
執行下面語句
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
執行過修改的
執行下面語句
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
password 替換為自己的密碼即可
3.刷新權限
FLUSH PRIVILEGES;
4.重置一下密碼
同上,未執行過修改的
執行下面語句
alter user 'root'@'localhost' identified by '你的密碼';
執行過修改的
執行下面語句
alter user 'root'@'%' identified by '你的密碼';
結束