linux版mysql8配置表名不區(qū)分大小寫問題
mysql8配置表名不區(qū)分大小寫
如果在安裝mysql8,初始化之前,沒有在my.cnf配置忽略大小寫配置:
[mysqld] lower_case_table_names=1
我們就需要重新初始化mysql
1 備份數(shù)據(jù)庫文件
停止mysql服務(wù)
systemctl stop mysqld.service
2 刪除數(shù)據(jù)庫文件
刪除之前,最后備份一下
sudo rm -rf /var/lib/mysql/*
3 配置
vim /etc/my.cnf
[mysqld] lower_case_table_names=1

4 初始化
初始化,此時就會根據(jù)我們更改的新配置文件就行配置
sudo mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql

5 啟動mysql服務(wù)
systemctl start mysqld.service
6 登錄mysql并設(shè)置密碼
mysql -uroot -p

給root用戶修改密碼,新的密碼為:root
注意,需要再sql命令行當中執(zhí)行
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

7 圖形化工具遠程登錄
當前問題
在用SQLyog或Navicat中配置遠程連接Mysql數(shù)據(jù)庫時遇到如下報錯信息,這是由于Mysql配置了不支持遠程連接引起的。

在Linux系統(tǒng)MySQL下測試
mysql -uroot -p use mysql; select Host,User from user;

可以看到root用戶的當前主機配置信息為localhost。
修改Host為通配符%
Host列指定了允許用戶登錄所使用的IP。
比如user=root Host=192.168.1.1。這里的意思就是說root用戶只能通過192.168.1.1的客戶端去訪問。
user=root Host=localhost,表示只能通過本機客戶端去訪問。
而 %是個通配符 ,如果Host=192.168.1.%,那么就表示只要是IP地址前綴為“192.168.1.”的客戶端都可以連接。
如果 Host=% ,表示運行任何所有的IP都有連接權(quán)限。
注意:在生產(chǎn)環(huán)境下不能為了省事將host設(shè)置為%,這樣做會存在安全問題,具體的設(shè)置可以根據(jù)生產(chǎn)環(huán)境的IP進行設(shè)置。
update user set host = '%' where user ='root';

Host修改完成后記得執(zhí)行flush privileges使配置立即生效:
flush privileges;
測試
如果安裝的是 MySQL5.7 版本,接下來就可以使用SQLyog或者Navicat成功連接至MySQL了。
如果安裝的是MySQL8 版本,Navicat會成功連接至MySQL,而SQLyog連接時還會出現(xiàn)如下問題:

這種問題只會發(fā)生在安裝mysql8.0版本當中出現(xiàn)
原因如下:
配置新連接報錯:錯誤號碼 2058,分析是 mysql 密碼加密方法變了。
解決方法:
Linux下 mysql -u root -p 登錄你的 mysql 數(shù)據(jù)庫
mysql -uroot -p
然后執(zhí)行這條SQL: 密碼為:root
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
然后在重新配置SQLyog的連接,則可連接成功了,OK。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
一次現(xiàn)場mysql重復記錄數(shù)據(jù)的排查處理實戰(zhàn)記錄
這篇文章主要給大家介紹了一次現(xiàn)場mysql重復記錄數(shù)據(jù)的排查處理記錄,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2021-10-10
IDEA鏈接MySQL報錯08001和連接成功后不顯示表的問題及解決方法
這篇文章主要介紹了IDEA鏈接MySQL報錯08001和連接成功后不顯示表的問題及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10
MySQL數(shù)據(jù)庫優(yōu)化之索引實現(xiàn)原理與用法分析
這篇文章主要介紹了MySQL數(shù)據(jù)庫優(yōu)化之索引實現(xiàn)原理與用法,結(jié)合實例形式分析了mysql數(shù)據(jù)庫優(yōu)化操作的索引原理、具體實現(xiàn)與相關(guān)操作注意事項,需要的朋友可以參考下2020-01-01
使用mysql語句查看數(shù)據(jù)庫表所占容量空間大小
這篇文章主要給大家介紹了關(guān)于如何使用mysql語句查看數(shù)據(jù)庫表所占容量空間大小的相關(guān)資料,如何在MySQL數(shù)據(jù)庫管理中查詢數(shù)據(jù)庫、表、索引的容量大小是經(jīng)常遇到的需求,需要的朋友可以參考下2023-08-08
MySQL中MAX()和MIN()函數(shù)的高效使用及技巧
在SQL數(shù)據(jù)庫中,最大/最小值函數(shù)—MAX()/MIN()是經(jīng)常要用到的,下面這篇文章主要給大家介紹了關(guān)于MySQL中MAX()和MIN()函數(shù)的高效使用及技巧的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-06-06
MySQL性能參數(shù)詳解之Max_connect_errors 使用介紹
這篇文章主要介紹了MySQL性能參數(shù)詳解之Max_connect_errors 使用介紹,需要的朋友可以參考下2016-05-05

