設置mysql數據庫編碼格式(mysql默認編碼格式)

本文目錄一覽:

安裝mysql 怎樣設置編碼方式

檢查當前數據庫編碼。使用語句:

show variables like ‘%character%’;

show variables like’%collation%’;

如果不是以上情況,需要將mysql編碼設置為utf-8。具體步驟如下:

如果安裝mysql時安裝了“MySql Sever Instance Configuration Wizard”,則只需要啟動該程序進行相應設置即可。如下面截圖中所描述,需要將默認編碼設置為utf8

如果沒有該程序,需要手動修改mysql編碼。

1、 編輯MySql的配置文件

MySql的配置文件Windows下一般在系統目錄下或者在MySql的安裝目錄下名字叫my.ini,可以搜索,Linux下一般是 /etc/my.cnf

–在 [mysqld] 標籤下加上以下內容:

default-character-set = utf8

character_set_server = utf8

注意:如果此標籤下已經存在“default-character-set=GBK”類似的內容,只需修改即可。

–在 [mysql] 標籤下加上一行

default-character-set = utf8

–在 [mysql.server]標籤下加上一行

default-character-set = utf8

–在 [mysqld_safe]標籤下加上一行

default-character-set = utf8

–在 [client]標籤下加上一行

default-character-set = utf8

2、 重新啟動MySql服務

Windows可在服務管理器中操作,也可使用命令行:

net stop mysql 回車

net start mysql 回車

服務名可能不一定為mysql,請按自己的設置

Linux下面可是用 service mysql restart

如果出現啟動失敗,請檢查配置文件有沒有設置錯誤

3、 查看設置結果

登錄MySql命令行客戶端:打開命令行

mysql –uroot –p 回車

輸入密碼

進入mysql後 執行 :show variables like “% character %”;

另外:

建立數據庫時可以使用以下命令:

create database app_relation character set utf8;

use app_relation;

source app_relation.sql;

修改數據庫編碼的命令為:

alter database app_relation character set utf8;

如何改變mysql數據庫的編碼方式

1. 查看MySQL數據庫的默認編碼

有如下兩種方式,

(1)使用status命令

mysql status;

圖1 status命令

(2)使用show variables命令

mysql show variables like ‘char%’;

圖2 show variables命令

如果要查看某個數據庫的編碼,在運行上面的命令前,應先執行use db_name;命令切換數據庫(db_name為要查看的數據庫名)。

2. 改變MySQL數據庫的默認編碼

安裝MySQL數據庫時的默認編碼是latin1,實際使用時可能要使用其他編碼。下文描述如何將默認編碼改為utf8:

首先修改MySQL的配置文件/etc/mysql/my.cnf:

在[client]下追加:

default-character-set=utf8

在[mysqld]下追加:

character-set-server=utf8

在[mysql]下追加:

default-character-set=utf8

修改完畢後,使用如下命令之一重啟mysql服務:

service mysql restart

/etc/init.d/mysql restart

改變後,之前手工創建的數據庫如未顯式指定編碼,則其編碼仍是默認的latin1,可使用如下命令更改編碼:

mysql alter database db_name CHARACTER SET utf8;

參考資料:

[1]

mysql數據庫怎麼設置編碼格式

1、 編輯MySql的配置文件

MySql的配置文件Windows下一般在系統目錄下或者在MySql的安裝目錄下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf

–在 [mysqld] 標籤下加上以下內容:

default-character-set = utf8

character_set_server = utf8

注意:如果此標籤下已經存在“default-character-set=GBK”類似的內容,只需修改即可。

–在 [mysql] 標籤下加上一行

default-character-set = utf8

–在 [mysql.server]標籤下加上一行

default-character-set = utf8

–在 [mysqld_safe]標籤下加上一行

default-character-set = utf8

–在 [client]標籤下加上一行

default-character-set = utf8

2、 重新啟動MySql服務

Windows可在服務管理器中操作,也可使用命令行:

net stop mysql 回車

net start mysql 回車

服務名可能不一定為mysql,請按自己的設置

Linux下面可是用 service mysql restart

如果出現啟動失敗,請檢查配置文件有沒有設置錯誤

3、 查看設置結果

登錄MySql命令行客戶端:打開命令行

mysql –uroot –p 回車

輸入密碼

進入mysql後 執行 :show variables like “% character %”;

顯示結果應該類似如下:

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | utf8 |

| character_set_results | utf8 |

| character_set_server | utf8 |

| character_set_system | utf8 |

| character_sets_dir | /usr/share/mysql/charsets/ |

如果仍有編碼不是utf8的,請檢查配置文件,也可使用mysql命令設置:

set character_set_client = utf8;

set character_set_server = utf8;

set character_set_connection = utf8;

set character_set_database = utf8;

set character_set_results = utf8;

set collation_connection = utf8_general_ci;

set collation_database = utf8_general_ci;

set collation_server = utf8_general_ci;

另外:

建立數據庫時可以使用以下命令:

create database app_relation character set utf8;

use app_relation;

source app_relation.sql;

修改數據庫編碼的命令為:

alter database app_relation character set utf8;

如何更改MySQL數據庫編碼為UTF-8或者GB2312?

mysql 創建 數據庫時指定編碼很重要,很多開發者都使用了默認編碼,亂碼問題可是防不勝防。制定數據庫的編碼可以很大程度上避免倒入導出帶來的亂碼問題。

網頁數據一般採用UTF8編碼,而數據庫默認為latin 。我們可以通過修改數據庫默認編碼方式為UTF8來減少數據庫創建時的設置,也能最大限度的避免因粗心造成的亂碼問題。

我們遵循的標準是,數據庫,表,字段和頁面或文本的編碼要統一起來

我們可以通過命令查看數據庫當前編碼:

mysql SHOW VARIABLES LIKE ‘character%’;

發現很多對應的都是 latin1,我們的目標就是在下次使用此命令時latin1能被UTF8取代。

第一階段:

mysql設置編碼命令

[sql] view plain copy

SET character_set_client = utf8;

SET character_set_connection = utf8;

SET character_set_database = utf8;

SET character_set_results = utf8;

SET character_set_server = utf8;

    然後 mysql SHOW VARIABLES LIKE ‘character%’; 你可以看到全變為 utf8 

但是,這只是一種假象

此種方式只在當前狀態下有效,當重啟數據庫服務後失效。

所以如果想要不出現亂碼只有修改my.ini文件,

從my.ini下手(標籤下沒有的添加,有的修改)

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

default-character-set=utf8

以上3個section都要加default-character-set=utf8,平時我們可能只加了mysqld一項。

然後重啟mysql,執行

mysql SHOW VARIABLES LIKE ‘character%’;

確保所有的Value項都是utf8即可。

但是可惡的事情又來了,

|character_set_client      | utf8                                  |

| character_set_connection | utf8                                  |

| character_set_database   | utf8                                  |

| character_set_filesystem | binary                                |

| character_set_results    | utf8                                  |

| character_set_server     | latin1                                |

| character_set_system     | utf8

注意  該配置| character_set_server     | latin1 無法設置成UTF8   交互時候仍然會出現亂碼。

第二階段:找到下面這東東

X:\%path%\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe

重新啟動設置,將默認編碼設置為utf8.這樣就能達到我們所要的效果了。

mysql SHOW VARIABLES LIKE ‘character%’;

+————————–+———————————————————+

| Variable_name            | Value                                                   |

+————————–+———————————————————+

| character_set_client     | utf8                                                    |

| character_set_connection | utf8                                                    |

| character_set_database   | utf8                                                    |

| character_set_filesystem | binary                                                  |

| character_set_results    | utf8                                                    |

| character_set_server     | utf8                                                    |

| character_set_system     | utf8                                                    |

| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |

+————————–+———————————————————+

8 rows in set

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/236150.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 11:58
下一篇 2024-12-12 11:58

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件並生成完整的圖像

    OBJ格式是一種用於表示3D對象的標準格式,通常由一組頂點、面和紋理映射坐標組成。在本文中,我們將討論如何將多個OBJ文件拼接在一起,生成一個完整的3D模型。 一、讀取OBJ文件 …

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • 如何將視頻導出成更小的格式給IT前端文件

    本文將從以下幾個方面介紹如何將視頻導出成更小的格式,以便於在IT前端文件中使用。 一、選擇更小的視頻格式 在選擇視頻格式時,應該儘可能選擇更小的格式,如MP4、WebM、FLV等。…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28

發表回復

登錄後才能評論