當前位置:首頁 » 數據倉庫 » mysql資料庫更改字元集
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

mysql資料庫更改字元集

發布時間: 2022-07-04 09:46:37

㈠ 如何修改Mysql字元集

(1)最簡單的修改方法,就是修改mysql的my.ini文件中的字元集鍵值,
如default-character-set=utf8
character_set_server=utf8
修改完後,重啟mysql的服務,servicemysqlrestart
使用mysql>SHOWVARIABLESLIKE'character%';查看,發現資料庫編碼均已改成utf8
+--------------------------+---------------------------------+|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|D:"mysql-5.0.37"share"charsets"|+--------------------------+---------------------------------+
(2)還有一種修改mysql默認字元集的方法,就是使用mysql的命令
mysql>SETcharacter_set_client=utf8;mysql>SETcharacter_set_connection=utf8;mysql>SETcharacter_set_database=utf8;mysql>SETcharacter_set_results=utf8;mysql>SETcharacter_set_server=utf8;mysql>SETcollation_connection=utf8;mysql>SETcollation_database=utf8;mysql>SETcollation_server=utf8;
一般就算設置了表的mysql默認字元集為utf8並且通過UTF-8編碼發送查詢,你會發現存入資料庫的仍然是亂碼。問題就出在這個connection連接層上。解決方法是在發送查詢前執行一下下面這句:
SETNAMES'utf8';
它相當於下面的三句指令:
SETcharacter_set_client=utf8;SETcharacter_set_results=utf8;SETcharacter_set_connection=utf8;

㈡ 怎樣修改mysql資料庫字元集

首先,MySQL的字元集問題主要是兩個概念,一個是Character Sets,一個是Collations,前者是字元內容
及編碼,後者是對前者進行比較操作的一些規則。這兩個參數集可以在資料庫實例、單個資料庫、表、列等四個級
別指定。
對於使用者來說,一般推薦使用utf8編碼來存儲數據。而要解決亂碼問題,不單單是MySQL數據的存儲問題,還
和用戶的程序文件的編碼方式、用戶程序和MySQL資料庫的連接方式都有關系。

首先,MySQL有默認的字元集,這個是安裝的時候確定的,在編譯MySQL的時候可以通過DEFAULT_CHARSET=
utf8和DEFAULT_COLLATION=utf8_general_ci這兩個參數(MySQL5.5版本,5.1版本用--with-charset=
utf8 --with-collation=utf8_general_ci)來指定默認的字元集為utf8,這也是最一勞永逸的辦法,這樣指定後,
客戶端連接到資料庫的編碼方式也默認是utf8了,應用程序不需要任何處理。

但是遺憾的是,很多人編譯安裝MySQL的時候沒有指定這兩個參數,大多數人更是通過二進製程序的方式安裝,那
么這時候MySQL的默認字元集是latin1。而這時候我們仍然可以指定MySQL的默認字元集,通過my.cnf文件增加
兩個參數:
1.在[mysqld]下添加
default-character-set=utf8(mysql 5.5 版本添加character-set-server=utf8)
2.在[client]下添加
default-character-set=utf8
這樣我們建資料庫建表的時候就不用特別指定utf8的字元集了。配置文件里的這種寫法解決了數據存儲和比較的問題
,但是對客戶端的連接是沒有作用的,客戶端這時候一般需要指定utf8方式連接才能避免亂碼。也就是傳說總的set
names命令。事實上,set names utf8命令對應的是伺服器端以下幾個命令:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = xutf8;
但這三個參數是不能寫在配置文件my.cnf里的。只能通過set命令來動態修改。我們需要的是在配置文件里寫好一勞
永逸的辦法。那麼這時候,是否有在服務端解決問題的辦法呢,可行的思路是在init_connect里設置。這個命令在每
個普通用戶連接上來的時候都會觸發執行,可以在[mysqld]部分增加以下一行設置連接字元集:
在[mysqld]下添加:
init_connect = 'SET NAMES utf8'
總結:
1、首選在編譯安裝MySQL的時候指定兩個參數使用utf8編碼。
2、次選在配置文件my.cnf或my.ini設定兩個參數,同時設置init_connect參數。
3、第三在配置文件my.cnf或my.ini設定兩個參數,同時客戶端的連接指定set names命令。
4、在配置文件my.cnf里的client和server處加入default-character-set參數方便管理。

㈢ mysql資料庫怎麼改字元集

Liunx下修改MySQL字元集:
1.查找MySQL的cnf文件的位置
find / -iname '*.cnf' -print

/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-small.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-huge.cnf
/usr/share/texmf/web2c/texmf.cnf
/usr/share/texmf/web2c/mktex.cnf
/usr/share/texmf/web2c/fmtutil.cnf
/usr/share/texmf/tex/xmltex/xmltexfmtutil.cnf
/usr/share/texmf/tex/jadetex/jadefmtutil.cnf
/usr/share/doc/MySQL-server-community-5.1.22/my-innodb-heavy-4G.cnf
/usr/share/doc/MySQL-server-community-5.1.22/my-large.cnf
/usr/share/doc/MySQL-server-community-5.1.22/my-small.cnf
/usr/share/doc/MySQL-server-community-5.1.22/my-medium.cnf
/usr/share/doc/MySQL-server-community-5.1.22/my-huge.cnf

2. 拷貝 small.cnf、my-medium.cnf、my-huge.cnf、my-innodb-heavy-4G.cnf其中的一個到/etc下,命名為my.cnf
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

3. 修改my.cnf
vi /etc/my.cnf
在[client]下添加
default-character-set=utf8
在[mysqld]下添加
default-character-set=utf8

4.重新啟動MySQL
[root@bogon ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL [ 確定 ]
Starting MySQL. [ 確定 ]
[root@bogon ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.22-rc-community-log MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

㈣ 如何修改mysql表中數據字元集

如何修改mysql表中數據字元集
1. 修改my.ini配置文件(MySQL配置文件)
character_set_server = utf8 #設置字元集
2. 修改資料庫字元集
alter database 資料庫名 character set utf8;
3. 重啟mysql資料庫

㈤ 如何修改mysql資料庫字元集

方法/步驟

如果沒有配置好cmd裡面的mysql 環境變數,那就在系統高級設置那兒進行MySQL的環境變數設置。

win+R,調出「運行」,輸入cmd,回車

登錄資料庫,

查看資料庫

查看資料庫字元編碼

通過MySQL命令行修改:(編碼可選)
mysql> set character_set_client=utf8;
mysql> set character_set_connection=utf8;
mysql> set character_set_database=utf8;
mysql> set character_set_results=utf8;
mysql> set character_set_server=utf8;
mysql> set character_set_system=utf8;
mysql> set collation_connection=utf8;
mysql> set collation_database=utf8;
mysql> set collation_server=utf8;

當然還有:
修改資料庫的字元集mysql>use mydb
mysql>alter database mydb character set utf8;

創建資料庫指定資料庫的字元集
mysql>create database mydb character set utf8;

㈥ 如何更改mysql資料庫的字元集

(1) 最簡單的修改方法,就是修改mysql的my.ini文件中的字元集鍵值,
如 default-character-set = utf8
character_set_server = utf8
修改完後,重啟mysql的服務,service mysql restart
使用 mysql> SHOW VARIABLES LIKE 'character%';查看,發現資料庫編碼均已改成utf8
+--------------------------+---------------------------------+ | 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 | D:"mysql-5.0.37"share"charsets" | +--------------------------+---------------------------------+

(2) 還有一種修改mysql默認字元集的方法,就是使用mysql的命令
mysql> SET character_set_client = utf8 ; mysql> SET character_set_connection = utf8 ; mysql> SET character_set_database = utf8 ; mysql> SET character_set_results = utf8 ; mysql> SET character_set_server = utf8 ; mysql> SET collation_connection = utf8 ; mysql> SET collation_database = utf8 ; mysql> SET collation_server = utf8 ;

一般就算設置了表的mysql默認字元集為utf8並且通過UTF-8編碼發送查詢,你會發現存入資料庫的仍然是亂碼。問題就出在這個connection連接層上。解決方法是在發送查詢前執行一下下面這句:
SET NAMES 'utf8';

它相當於下面的三句指令:
SET character_set_client = utf8; SET character_set_results = utf8; SET character_set_connection = utf8;

㈦ 哪裡修改mysql資料庫 字元集

關鍵字:
字元集
gbk
utf8
開始表W的字元集設置成了gbk,但是現在的建的表要求字元集為utf8。於是:alter
table
`W`
default
character
set
utf8;或者ALTER
TABLE
tbl_name
CONVERT
TO
CHARACTER
SET
charset_name;但是發現其中一個欄位CONTENT的字元集還是gbk。於是更改
mysql資料庫
表中某個欄位的字元集,修改欄位的定義:alter
table
`W`
modify
column
`CONTENT`
varchar(30)
character
set
utf8
not
null;

㈧ mysql資料庫怎麼更改字元集

方法/步驟如果沒有配置好cmd裡面的mysql環境變數,那就在系統高級設置那兒進行MySQL的環境變數設置。win+R,調出「運行」,輸入cmd,回車登錄資料庫,查看資料庫查看資料庫字元編碼通過MySQL命令行修改:(編碼可選)mysql>setcharacter_s

㈨ 如何更改MySQL資料庫編碼為UTF-8或者GB2312

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

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

我們遵循的標準是,資料庫,表,欄位和頁面或文本的編碼要統一起來

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

mysql> SHOW VARIABLES LIKE 'character%';

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

第一階段:

mysql設置編碼命令

[sql]view plain

  • SETcharacter_set_client=utf8;

  • SETcharacter_set_connection=utf8;

  • SETcharacter_set_database=utf8;

  • SETcharacter_set_results=utf8;

  • SETcharacter_set_server=utf8;

  • 然後mysql> SHOW VARIABLES LIKE 'character%';你可以看到全變為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 FilesMySQLMySQL Server 5.0sharecharsets |

    +--------------------------+---------------------------------------------------------+

    8 rows in set

㈩ 怎麼更改mysql資料庫中的欄位字元集

關鍵字:字元集gbkutf8開始表w的字元集設置成了gbk,但是現在的建的表要求字元集為utf8。於是:alter
table
`w`
default
character
set
utf8;或者alter
table
tbl_name
convert
to
character
set
charset_name;但是發現其中一個欄位content的字元集還是gbk。於是更改mysql資料庫表中某個欄位的字元集,修改欄位的定義:alter
table
`w`
modify
column
`content`
varchar(30)
character
set
utf8
not
null;