溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySql中常見問題有哪些

發(fā)布時間:2021-09-17 17:16:15 來源:億速云 閱讀:258 作者:小新 欄目:MySQL數(shù)據(jù)庫

這篇文章將為大家詳細講解有關(guān)MySql中常見問題有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1、默認編碼集問題

在做前臺數(shù)據(jù)展示的時候,查詢?nèi)縮elect * from t_news可以查到所有內(nèi)容。然后參數(shù)化查詢的時候就不行。比如:

Select * from t_news where title like ‘%源代碼教育%’;查到0條數(shù)據(jù)。

Select * from t_news where id = 1。 查詢到1條數(shù)據(jù)。

注意標紅字段,這是我修改之后的,原來都是latin1。

解決辦法:

Windows下MySQL的配置文件是my.ini,一般會在安裝目錄的根目錄。

Linux下MySQL的配置文件是my.cnf,一般會放在/etc/my.cnf,/etc/mysql/my.cnf。如果找不到,可以用find命令查找。

打開my.ini/my.cnf修改以下兩個字段。

Ps:修改配置文件過后需要重啟mysql。

2、數(shù)據(jù)不回滾

在編程的時候,spring配置了事務,但出現(xiàn)異常時候數(shù)據(jù)庫的數(shù)據(jù)依然改變。在確認事務和代碼配置沒有問題的情況下,我們把可能性專項數(shù)據(jù)庫。我們使用”Navicat”工具設(shè)計表,在”選項”一欄中我們發(fā)現(xiàn)表使用的存儲引擎是MyISAM。

MyISAM不支持事務,回滾將造成不完全回滾,不具有原子性。

將MyISAM改為InnoDB。

同樣在MySQL的配置文件(my.ini)中有默認的存儲引擎。在創(chuàng)建表的時候若沒有特別聲明,將使用默認的存儲引擎。

3、優(yōu)化導入大量數(shù)據(jù)

在工作中我們難免會遇到數(shù)據(jù)的大量導入的情況。比如需要查詢以前備份的數(shù)據(jù),將真實數(shù)據(jù)導入到本地做測試,定期將數(shù)據(jù)導入到備份數(shù)據(jù)庫等等業(yè)務場景。

MySQL提供了load data infile的導入方式。但是配置不恰當同樣會導致導入速度不快。

解決方案:

將后面的參數(shù)值調(diào)大,一般為物理內(nèi)存的百分之80%。但是32位系統(tǒng)會被限制為2-3.5G。

4、開啟自定義函數(shù)功能(云數(shù)據(jù)庫

有時候我們運行別人的代碼,或者移植服務器的時候可能會遇到數(shù)據(jù)庫以前定義的函數(shù)不能使用的情況。尤其是與數(shù)據(jù)庫,默認是沒有開啟函數(shù)功能,導致函數(shù)不執(zhí)行。

首先我們查看函數(shù)功能是否開啟。如下圖:

這里自定義函數(shù)功能默認是關(guān)閉狀態(tài)。

解決方案:使用”set global log_bin_trust_function_creators = 1;”開啟自定義函數(shù)功能。

再次查詢:

但是這種方式只是一個零時解決方案,在MySQL重啟以后,功能又會默認關(guān)閉。

要永久開啟自定義函數(shù)功能,需要在配置文件中加入”log-bin-trust-function-creators=1”。

5、linux環(huán)境下表名大小寫問題

在linux系統(tǒng)環(huán)境下,MySQL表名默認區(qū)分大小寫。有時候表名中若輸錯一個大寫字母而導致查詢不出來的情況。

解決辦法:在my.cnf配置文件最后添加”lower_case_table_names=1”。然后重啟MySQL。

“l(fā)ower_case_table_names=1        ”這句話的意思是將輸入語句強制轉(zhuǎn)換為小寫,再執(zhí)行語句。

關(guān)于“MySql中常見問題有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI