欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

對(duì)MySQL中字符集的相關(guān)設(shè)置操作的基本教程

 更新時(shí)間:2015年12月23日 12:00:08   投稿:goldensun  
這篇文章主要介紹了對(duì)MySQL中字符集的相關(guān)設(shè)置操作的基本教程,重點(diǎn)講解了修改MySQL字符集的方法,需要的朋友可以參考下

1、查看字符集相關(guān)變量

mysql> show variables like 'character%';

+————————–+——————————-+

| Variable_name      | Value             |

+————————–+——————————-+

| character_set_client   | latin1            |

| character_set_connection | latin1            |

| character_set_database  | latin1            |

| character_set_filesystem | binary            |

| character_set_results  | latin1            |

| character_set_server   | latin1            |

| character_set_system   | utf8             |

| character_sets_dir    | c:\wamp\mysql\share\charsets\ |

+————————–+——————————-+


2、字符集轉(zhuǎn)換過(guò)程
客戶端——–字符集轉(zhuǎn)換器———–服務(wù)
gbk ————gbk-utf8-utf8———-utf8
gbk————-gbk-gbk-utf8———-utf8
客戶端要告訴服務(wù)端使用的編碼是什么,然后沒(méi)有直接告訴服務(wù)器而告訴“轉(zhuǎn)換器”
字符集轉(zhuǎn)換器收到客戶端信息后查看服務(wù)器是什么編碼,然后將客戶端傳來(lái)的字符集轉(zhuǎn)換成服務(wù)器設(shè)置的字符集
服務(wù)器向客戶端發(fā)送信息時(shí)也是先告訴“轉(zhuǎn)換器”

3、字符集變量解釋

character_set_client                     
客戶端字符集,連接mysql的客戶端程序的字符集,該變量告訴轉(zhuǎn)換器客戶端發(fā)送的字符集。

 character_set_connection
轉(zhuǎn)換器轉(zhuǎn)換要轉(zhuǎn)換成的字符集

character_set_server
服務(wù)端使用的字符集,存入數(shù)據(jù)時(shí)使用的字符集

character_set_results
查詢的結(jié)果是什么編碼

推論:什么時(shí)候會(huì)出現(xiàn)亂碼

1:client 什么與實(shí)際不符,微軟命令提示符默認(rèn)是gbk,如果設(shè)置成utf8就會(huì)出現(xiàn)亂碼

2:results與客戶端頁(yè)面不符的時(shí)候

什么時(shí)候會(huì)丟失數(shù)據(jù)

connection和服務(wù)器的字符集比client小時(shí),會(huì)丟失數(shù)據(jù),比如客戶端是utf8而轉(zhuǎn)換器是gbk

當(dāng)客戶端是utf8 而服務(wù)端是 gbk時(shí)要設(shè)置

set character_set_client=utf8

set character_set_connection=gbk/utf8 這里設(shè)置什么都可以,因?yàn)樽罱K轉(zhuǎn)換器會(huì)根據(jù)服務(wù)器的類型進(jìn)行轉(zhuǎn)換

set character_set_results=utf8

4、設(shè)置字符集變量

set names utf8     進(jìn)入mysql設(shè)置所用的字符集

在my.conf中添加

[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8

5.修改mysql字符集
將latin1字符集的數(shù)據(jù)庫(kù)修改成gbk字符集的數(shù)據(jù)庫(kù)的過(guò)程
(1)、導(dǎo)出表結(jié)構(gòu)

mysqldump -uroot -p –default-character-set=gbk -d DATABASE_NAME > createtable.sql

        –default-character-set=gbk 表示以什么字符集連接
        -d 表示只導(dǎo)出表結(jié)構(gòu),不導(dǎo)出數(shù)據(jù)
(2)、修改createtable.sql文件中的表結(jié)構(gòu)定義的字符集為新字符集
(3)、導(dǎo)出所有記錄

mysqldump -uroot -p –quick –no-create-info –extend-insert –default-character-set DATABASE_NAME > data.sql

        –quick:改訊息用于轉(zhuǎn)儲(chǔ)大的表。它強(qiáng)制mysqldump從服務(wù)器一次一行的檢索表中的行二不是檢索所有行,并在輸出錢(qián)將它緩存到內(nèi)存中
        –extended-insert:使用包括幾個(gè)values列表的多行insert語(yǔ)法。這樣轉(zhuǎn)儲(chǔ)文件更小,重載文件時(shí)可以加速插入
        –no-create-info:不重新創(chuàng)建每個(gè)轉(zhuǎn)儲(chǔ)表的create table 語(yǔ)句
        –default-character-set=latin1:安裝原有的字符集導(dǎo)出所有數(shù)據(jù),這樣導(dǎo)出的文件中,所有中文都是可見(jiàn)的,不會(huì)保存成亂碼
(4)、帶寬data.sql,將set names latin1 修改成set names gabk
(5)、使用新的字符集創(chuàng)建新的數(shù)據(jù)庫(kù)

create database DATABASE_NAME default charset gbk;

(6)、創(chuàng)建表,執(zhí)行createtable.sql

mysql -uroot -p DATABASE_NAME < createtable.sql

(7)、導(dǎo)入數(shù)據(jù),執(zhí)行data.sql

mysql -uroot -p DATABASE_NAME < data.sql

相關(guān)文章

  • 通過(guò)命令行導(dǎo)入到mysql數(shù)據(jù)庫(kù)時(shí)出現(xiàn)亂碼的解決方法

    通過(guò)命令行導(dǎo)入到mysql數(shù)據(jù)庫(kù)時(shí)出現(xiàn)亂碼的解決方法

    原因: 含有中文字符的mysql數(shù)據(jù)庫(kù)文件,通過(guò)命令行導(dǎo)入到mysql數(shù)據(jù)庫(kù)中容易出現(xiàn)亂碼。
    2014-07-07
  • MySQL?Replication中的并行復(fù)制示例詳解

    MySQL?Replication中的并行復(fù)制示例詳解

    MySQL在5.6版本之前,主從復(fù)制的從節(jié)點(diǎn)上有兩個(gè)線程,分別是I/O線程和SQL線程,今天通過(guò)本文給大家介紹MySQL?Replication中的并行復(fù)制示例詳解,感興趣的朋友一起看看吧
    2022-07-07
  • 全面分析MySQL?ERROR?1045出現(xiàn)的原因及解決

    全面分析MySQL?ERROR?1045出現(xiàn)的原因及解決

    這篇文章主要介紹了全面分析MySQL?ERROR?1045出現(xiàn)的原因及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • MySQL同步ES(Elasticsearch)的四種常見(jiàn)方案分享

    MySQL同步ES(Elasticsearch)的四種常見(jiàn)方案分享

    MySQL和Elasticsearch(ES)是兩個(gè)非常重要的數(shù)據(jù)存儲(chǔ)和搜索技術(shù),MySQL是一種關(guān)系型數(shù)據(jù)庫(kù),而ES則是一種文檔型數(shù)據(jù)庫(kù),在許多情況下,我們需要將MySQL中的數(shù)據(jù)同步到ES中,本文將介紹四種常見(jiàn)的MySQL同步ES方案,需要的朋友可以參考下
    2023-07-07
  • mysql中not?in隱含陷阱詳解

    mysql中not?in隱含陷阱詳解

    NOT?IN?的作用和?IN?恰好相反,NOT?IN?用來(lái)判斷表達(dá)式的值是否不存在于給出的列表中;如果不是,返回值為?1,否則返回值為?0,下面這篇文章主要給大家介紹了關(guān)于mysql中not?in隱含陷阱的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • MySQL分區(qū)表的詳細(xì)介紹

    MySQL分區(qū)表的詳細(xì)介紹

    當(dāng)設(shè)計(jì)MySQL分區(qū)表時(shí),需要考慮以下幾個(gè)方面,分區(qū)策略、分區(qū)字段、分區(qū)數(shù)量和分區(qū)函數(shù),本文就來(lái)介紹一下MySQL分區(qū)表,感興趣的可以了解一下
    2023-10-10
  • MYSQL字符串強(qiáng)轉(zhuǎn)的方法示例

    MYSQL字符串強(qiáng)轉(zhuǎn)的方法示例

    這篇文章主要給大家介紹了關(guān)于MYSQL字符串強(qiáng)轉(zhuǎn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 淺談MySQL中的子查詢優(yōu)化技巧

    淺談MySQL中的子查詢優(yōu)化技巧

    這篇文章主要介紹了淺談MySQL中的子查詢優(yōu)化技巧,子查詢的優(yōu)化是MySQL諸多優(yōu)化方法中的基本,需要的朋友可以參考下
    2015-05-05
  • Linux下徹底刪除Mysql 8.0服務(wù)的方法

    Linux下徹底刪除Mysql 8.0服務(wù)的方法

    這篇文章主要介紹了Linux下徹底刪除Mysql 8.0服務(wù)的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Centos7下安裝和配置MySQL5.7.20的詳細(xì)教程

    Centos7下安裝和配置MySQL5.7.20的詳細(xì)教程

    這篇文章主要介紹了Linux(CentOS7)下安裝和配置MySQL5.7.20詳細(xì)教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià),需要的朋友可以參考下
    2020-05-05

最新評(píng)論