成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

解決MySQL中文亂碼以及版本不一致問題

數(shù)據(jù)庫 MySQL
這幾天基于Heritrix寫了一個爬蟲,用到MySQL,在導入導出數(shù)據(jù)時,遇到一些亂碼問題,好不容易解決了,記錄一下,以備查看。

 一、導出數(shù)據(jù)

先說明一下自己的環(huán)境:Mac OS X 10.8.3, MySQL Community Server 5.6.10, MySQL Workbench 5.2.47。

我想把本機數(shù)據(jù)庫內(nèi)的數(shù)據(jù)遷移到另一臺機器上,于是使用Workbench中自帶的import/export功能,其實就是調(diào)用mysqldump。不幸的是,出現(xiàn)了版本不一致的錯誤。

 

錯誤沒治了,最終找到解決方案,可以指定mysql的mysqldump,路徑為:/usr/local/mysql/bin/mysqldump,這樣是把數(shù)據(jù)導出為sql語句的insert語句。

由于需要是把數(shù)據(jù)導出為excel,所以通過mysql控制臺使用select語句把數(shù)據(jù)導出到excel文件中。

下面先介紹怎么導出為excel文件,然后介紹怎么導出為insert語句。

1、通過終端操作。

  1. cd /usr/local/mysql/bin/ 

2、到達bin目錄后,可以ls -l命令看看當前目錄有哪些程序可以用,這里先用mysql,命令格式為:

mysql -h主機IP -u用戶名 -p密碼

如:

  1. ./mysql -hlocalhost -uroot -p123456 

注意前面加的"./"。

這時就進入mysql命令控制臺,終端上顯示為:

3、然后通過show databases命令查看當前的所有數(shù)據(jù)庫,使用use命令選擇進入某個數(shù)據(jù)庫,注意每個命令都要以英文分號“;”結束。

4、使用sql語句導出需要的數(shù)據(jù),sql語句不限于單個表的查詢。由于我的數(shù)據(jù)庫編碼是utf8格式,而office默認的編碼則是gb2312,所以當某個字段中包含中文時,導出到excel后,中文內(nèi)容是會亂碼的,此時需要convert轉換編碼,具體使用方式:

我試著把文件保存到桌面,但始終提示沒有權限,應該是和用戶有關吧,無視了。當使用“./”這個路徑保存時,實際是保存到了/usr/local/mysql/data下面。打開看看,喲西,不亂碼了。

5、下面是把數(shù)據(jù)導出為sql的insert語句。

使用mysqldump命令,可以指定是單個表還是整個數(shù)據(jù)庫導出。

打開終端,定位到/usr/local/mysql/bin,使用這個目錄下的mysqldump。

導出單個表:

命令格式為:

mysqldump -u用戶名 -p密碼 -h主機地址 數(shù)據(jù)庫名 表名 > 導出文件存儲路徑

例如:

  1. /usr/local/mysql/bin/mysqldump -uroot -p123456 -hlocalhost -t --extended-insert=false --default-character-set=utf8 SpiderBBSDB Catalog > /Users/ethan/Desktop/Catalog.sql 

其中用到了幾個參數(shù),簡單說明一下:

-t:等同于--no-create-info,只導出數(shù)據(jù),而不添加CREATE TABLE 語句。默認導出的文件中也有create table語句。

--extended-insert:使用具有多個VALUES列的INSERT語法,也就是傳說中一次插入多條數(shù)據(jù)的INSERT句式。這樣使導出文件更小,并加速導入時的速度,但是有可能sql語句會有長度限制,所以我并不推薦此種方式,比如我某個表中有500W條數(shù)據(jù),難保能用一條insert語句可以執(zhí)行完畢。此選項默認為打開狀態(tài),把他置為false,就是一條數(shù)據(jù)一個insert語句了。

--default-character-set:設置默認字符集,由于我的數(shù)據(jù)庫和表均是設定為utf8編碼格式,當不設置此選項時,導出的中文是亂碼,奇怪的是官方說明中,說這個選項的默認值是utf8,表示不解。

導出整個數(shù)據(jù)庫:

  1. /usr/local/mysql/bin/mysqldump -uroot -p123456 -hlocalhost -t --extended-insert=false 
  2.  --default-character-set=utf8 SpiderBBSDB > /Users/ethan/Desktop/SpiderBBSDB.sql 

二、導入數(shù)據(jù)。

有導出就有導入。上面第5步導出的sql文件,可以直接在mysql workbench中執(zhí)行,也可以使用mysqldump導入,這里說明一下如何使用mysqldump導入:

/usr/local/mysql/bin/mysqldump -uroot -p123456 -hlocalhost --default-character-set=utf8 SpiderBBSDB < /Users/ethan/Desktop/Catalog.sql

三、關于java連接mysql寫入中文亂碼。

關于這個中文亂碼問題,著實折騰了我好久好久。一開始就百度谷歌bing,網(wǎng)上大多復制粘貼的答案,在這里記錄一下自己的情況,希望同路人不再走彎路。

其實我的修改很簡單,把數(shù)據(jù)庫的編碼改為utf-8,在新建表時,把表的默認編碼也改為utf-8,就可以了。就這么個小小的改動,讓我足足折騰了一個通宵,表示有解決問題強迫癥,問題不解決真的睡不著,唉~~~

原文鏈接:http://www.cnblogs.com/zhaocq/archive/2013/03/23/2976610.html

 【編輯推薦】

 

責任編輯:彭凡 來源: 博客園
相關推薦

2010-06-02 10:53:28

MySQL版本

2024-05-11 07:37:43

數(shù)據(jù)Redis策略

2024-04-07 09:00:00

MySQL

2025-04-03 09:51:37

2021-04-18 15:01:56

緩存系統(tǒng)數(shù)據(jù)

2024-11-18 08:00:00

數(shù)據(jù)倉庫通用語義層商業(yè)智能

2017-08-25 17:59:41

浮點運算C語言

2021-05-27 18:06:30

MySQL編碼數(shù)據(jù)

2013-12-13 14:46:55

OSPFMTU鄰接關系

2017-06-20 09:42:52

網(wǎng)絡安全法數(shù)據(jù)隱私法網(wǎng)絡安全

2022-03-16 15:54:52

MySQL數(shù)據(jù)format

2018-07-15 08:18:44

緩存數(shù)據(jù)庫數(shù)據(jù)

2022-03-18 10:53:49

數(shù)據(jù)系統(tǒng)架構

2018-07-08 07:38:28

數(shù)據(jù)庫緩存數(shù)據(jù)

2020-07-20 14:06:38

數(shù)據(jù)庫主從同步服務

2022-06-14 08:00:28

切換包管理器版本

2011-02-22 14:02:48

vsftpd

2021-01-19 10:39:03

Redis緩存數(shù)據(jù)

2023-12-22 10:19:19

數(shù)據(jù)庫鎖機制

2020-11-17 06:42:21

MySQL數(shù)據(jù)庫開源
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 狠狠综合久久av一区二区老牛 | 欧美一区二区三区在线观看 | 国产韩国精品一区二区三区 | 91久久综合 | 精品久久香蕉国产线看观看亚洲 | 一级黄色生活视频 | 91一区二区三区 | 国产一区电影 | 91精品一区| 亚洲最色网站 | 九九热免费视频在线观看 | 一区二区三区欧美在线观看 | 噜噜噜色网 | 成人一级毛片 | 黄色网络在线观看 | 久久精品国产一区二区电影 | 久草视频观看 | 国产成人艳妇aa视频在线 | 国产目拍亚洲精品99久久精品 | 天堂一区在线 | 亚洲精品久久久久久久久久久 | 欧美日韩亚洲国产综合 | 一区二区三区四区免费观看 | 99这里只有精品视频 | 亚洲日本视频 | 91福利网| 精品一区久久 | 国内激情av片 | 中文字幕影院 | 日韩欧美二区 | 嫩草最新网址 | 国产精品a免费一区久久电影 | 福利一区视频 | h在线看 | 女人精96xxx免费网站p | 欧美激情一区二区 | 欧美爱爱视频 | 久久久网 | 99re热这里只有精品视频 | 色婷婷综合网 | 日韩精品极品视频在线观看免费 |