【Mysql】iconv 轉換字符集
學習mysql字符集轉換的過程中,看到有些網路資料有使用iconv 命令轉換字符集的,所以這裡學習一下,iconv 的使用!(ps 網路中關於使用iconv 轉換mysqldump 出的檔案不靠譜,隨後的文章會介紹)
iconv的用法:
用法: iconv [選項...] [檔案...]
Convert encoding of given files from one encoding to another.
輸入/輸出格式規範:
-f, --from-code=NAME 原始文字編碼
-t, --to-code=NAME 輸出編碼
資訊:
-l, --list 列舉所有已知的字符集
輸出控制:
-c 從輸出中忽略無效的字元
-o, --output=FILE 輸出檔案
-s, --silent suppress warnings
--verbose 列印進度資訊
-?, --help 給出該系統求助列表
--usage 給出簡要的用法資訊
-V, --version 列印程式版本號
mysql> use latin
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from ytab;
+--------+----------------+
| name | val |
+--------+----------------+
| yangql | 楊奇龍 |
| cat | 貓 |
| lily | lily |
| 32 | shengxiaonan32 |
+--------+----------------+
4 rows in set (0.00 sec)
匯出資料庫latin中的ytab表:
[root@rac3 ~]# mysqldump -h127.0.0.1 -uroot latin ytab > create_la_ytab1.sql
[root@rac3 ~]# cat create_la_ytab1.sql
-- MySQL dump 10.11
-- Host: 127.0.0.1 Database: latin
-- ------------------------------------------------------
-- Server version 5.0.45
-- Table structure for table `ytab`
--
DROP TABLE IF EXISTS `ytab`;
CREATE TABLE `ytab` (
`name` varchar(15) default NULL,
`val` varchar(15) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- Dumping data for table `ytab`
LOCK TABLES `ytab` WRITE;
/*!40000 ALTER TABLE `ytab` DISABLE KEYS */;
INSERT INTO `ytab` VALUES ('yangql','??¨?¥?é??'),('cat','???'),('lily','lily'),('32','shengxiaonan32'); --出現亂碼
/*!40000 ALTER TABLE `ytab` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
-- Dump completed on 2011-10-27 13:40:25
[root@rac3 ~]# iconv -t latin1 -f utf8 -c create_la_ytab1.sql > ytab-latin.sql
[root@rac3 ~]# cat ytab-latin.sql
-- MySQL dump 10.11
-- Host: 127.0.0.1 Database: latin
-- ------------------------------------------------------
-- Server version 5.0.45
-- Table structure for table `ytab`
DROP TABLE IF EXISTS `ytab`;
CREATE TABLE `ytab` (
`name` varchar(15) default NULL,
`val` varchar(15) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- Dumping data for table `ytab`
LOCK TABLES `ytab` WRITE;
/*!40000 ALTER TABLE `ytab` DISABLE KEYS */;
INSERT INTO `ytab` VALUES ('yangql','楊'),('cat',',('lily','lily'),('32','shengxiaonan32');--引起部分資料丟失。。
/*!40000 ALTER TABLE `ytab` ENABLE KEYS */;
UNLOCK TABLES;
-- Dump completed on 2011-10-27 13:40:25
[root@rac3 ~]#
note:生產環境慎用!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-709812/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iconv字元編碼轉換字元
- MySQL修改字符集(mysqldump轉換全庫)MySql
- 字符集轉換
- 文字編碼轉換工具iconv 附批量轉換檔案編碼命令
- imp/exp 字符集轉換
- 字符集合轉換問題
- MySQL字符集設定及字元轉換(latin1轉utf8)MySql字元
- Linux下轉換字符集(UTF8轉換)Linux
- oracle字符集轉換分析工具Oracle
- sybase中的字符集轉換
- 再論字符集轉換(二)
- mysql 字符集 latin1 轉換utf8血淚史 。MySql
- 小談MySQL字符集(轉)MySql
- 遷移資料時oracle字符集的轉換遷移資料時oracle字符集的轉換Oracle
- CSSCAN掃描字符集轉換耗損CSS
- 巧妙轉換ORACLE資料庫字符集Oracle資料庫
- oracle資料庫字符集的轉換Oracle資料庫
- MySQL 4.1 字符集支援的原理(轉)MySql
- PHP 字元轉拼音首字iconv 警告錯誤PHP字元
- MySQL字符集MySql
- mysql 日期轉換字串MySql字串
- MySQL行列轉換拼接MySql
- 【Mysql 學習】mysql 字符集MySql
- Oracle 11g rac資料庫字符集轉換Oracle資料庫
- ora2pg 字符集 轉換問題總結
- 修改MySQL字符集MySql
- mysql 字符集修改MySql
- MySQL修改字符集MySql
- mysql的字符集MySql
- mysql行列轉換詳解MySql
- 使用Ccscan進行資料字符集轉換驗證(上)
- 使用Ccscan進行資料字符集轉換驗證(下)
- oracle字符集轉換(ZHS16GBK轉AL32UTF8)Oracle
- mysql4.1資料轉換指南(轉)MySql
- mysql字符集說明MySql
- 設定Mysql字符集MySql
- mysql字符集設定MySql
- mysql字符集小結MySql