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 初始化
初始化,此時(shí)就會根據(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命令行當(dāng)中執(zhí)行
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
7 圖形化工具遠(yuǎn)程登錄
當(dāng)前問題
在用SQLyog或Navicat中配置遠(yuǎn)程連接Mysql數(shù)據(jù)庫時(shí)遇到如下報(bào)錯(cuò)信息,這是由于Mysql配置了不支持遠(yuǎn)程連接引起的。
在Linux系統(tǒng)MySQL下測試
mysql -uroot -p use mysql; select Host,User from user;
可以看到root用戶的當(dāng)前主機(jī)配置信息為localhost。
修改Host為通配符%
Host列指定了允許用戶登錄所使用的IP。
比如user=root Host=192.168.1.1。這里的意思就是說root用戶只能通過192.168.1.1的客戶端去訪問。
user=root Host=localhost,表示只能通過本機(jī)客戶端去訪問。
而 %是個(gè)通配符 ,如果Host=192.168.1.%,那么就表示只要是IP地址前綴為“192.168.1.”的客戶端都可以連接。
如果 Host=% ,表示運(yùn)行任何所有的IP都有連接權(quán)限。
注意:在生產(chǎn)環(huán)境下不能為了省事將host設(shè)置為%,這樣做會存在安全問題,具體的設(shè)置可以根據(jù)生產(chǎn)環(huán)境的IP進(jìn)行設(shè)置。
update user set host = '%' where user ='root';
Host修改完成后記得執(zhí)行flush privileges使配置立即生效:
flush privileges;
測試
如果安裝的是 MySQL5.7 版本,接下來就可以使用SQLyog或者Navicat成功連接至MySQL了。
如果安裝的是MySQL8 版本,Navicat會成功連接至MySQL,而SQLyog連接時(shí)還會出現(xiàn)如下問題:
這種問題只會發(fā)生在安裝mysql8.0版本當(dāng)中出現(xiàn)
原因如下:
配置新連接報(bào)錯(cuò):錯(cuò)誤號碼 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é)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
安裝Mysql時(shí)出現(xiàn)錯(cuò)誤及解決辦法
因?yàn)橐粫r(shí)手癢癢更新了一下驅(qū)動,結(jié)果導(dǎo)致無線網(wǎng)卡出了問題,本文給大家分享安裝mysql時(shí)出現(xiàn)錯(cuò)誤及解決辦法,對安裝mysql時(shí)出現(xiàn)錯(cuò)誤相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧2015-12-12Last_Errno:?1062,Last_Error:?Error?Duplicate?entry
Last_Errno:?1062,Last_Error:?Error?Duplicate?entry?...?for?key?PRIMARY2014-02-02windows2008 64位系統(tǒng)下MySQL 5.7綠色版的安裝教程
這篇文章主要給大家分享了在windows2008 64位系統(tǒng)下MySQL 5.7綠色版的安裝教程,文中將安裝步驟介紹的非常詳細(xì),相信會對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-05-05MySQL中LAST_INSERT_ID()函數(shù)的實(shí)現(xiàn)
本文主要介紹了MySQL中LAST_INSERT_ID()函數(shù)的作用和使用方法,LAST_INSERT_ID()函數(shù)用于返回上一次INSERT操作生成的自增ID,對于需要獲取新插入記錄的主鍵的場景非常重要,感興趣的可以了解一下2024-10-10快速解決MySQL服務(wù)無法啟動顯示:系統(tǒng)出錯(cuò),發(fā)生系統(tǒng)錯(cuò)誤1067, 進(jìn)程意外終止的兩種方法
本人因?yàn)閜hpstudy的MySQL數(shù)據(jù)庫與我的電腦上的MySQL數(shù)據(jù)庫發(fā)生沖突,當(dāng)我將MySQL服務(wù)器的服務(wù)名從MySQL改為MySQL5后,啟動MySQL5服務(wù)后就報(bào)錯(cuò):系統(tǒng)出錯(cuò), 發(fā)生系統(tǒng)錯(cuò)誤 1067, 進(jìn)程意外終止,現(xiàn)在將這個(gè)解決方法分享給大家,需要的朋友可以參考下2024-06-06MySQL中的HBase、ES的特點(diǎn)和區(qū)別解析
本文介紹了MySQL、HBase和ElasticSearch的特點(diǎn)和區(qū)別,MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫,支持事務(wù)和SQL,而HBase和ElasticSearch是NoSQL數(shù)據(jù)庫,HBase基于HDFS,支持大規(guī)模數(shù)據(jù)的讀寫,而ElasticSearch是一個(gè)分布式的全文搜索引擎,感興趣的朋友跟隨小編一起看看吧2025-01-01MySQL8.0數(shù)據(jù)庫開窗函數(shù)圖文詳解
開窗函數(shù)為將要被操作的行的集合定義一個(gè)窗口,它對一組值進(jìn)行操作,不需要使用GROUP BY子句對數(shù)據(jù)進(jìn)行分組,能夠在同一行中同時(shí)返回基礎(chǔ)行的列和聚合列,這篇文章主要給大家介紹了關(guān)于MySQL8.0數(shù)據(jù)庫開窗函數(shù)的相關(guān)資料,需要的朋友可以參考下2023-06-06