天天看點

mysql導出亂碼問題

mysql導出時:

在dos下運作mysql 中和mysqldump

轉到安裝完的目錄:

mysqldump --help

mysqldump --default-character-set=gb2312 -u使用者名 -p密碼 導出的資料庫名 >1.sql

注意:-defalut-character-set=gb2312 隻能是gb2312

mysql導入時:

設定安裝完的目錄下的my.ini檔案的字元集設定default-character-set=latin1

執行sql server中要導出的資料庫上右鍵,選擇任務,生成腳本檔案,之生生成.sql檔案

在dos中

mysqldump --help

mysql -u使用者名 -p密碼 導出的資料庫名 <1.sql

想想做法并不難,關鍵就是my-sql(為了和T-sql區分,我瞎命名的)和T-sql有點别扭,不知道是誰聽不懂誰的方言。具體來說,我的做法分為就是以下幾步。

首先利用大名鼎鼎的mysql web前端PHPMyAdmin,在要導出的資料庫節點上選導出。這裡實際使用的應該就是mysqldump指令,界面上的選項應該是一些常用的參數。在這裡,我們隻導出結構,資料我們一會用MS SQL server推薦的辦法來做。記得選上下邊的“另存為檔案”,這樣就能得到一個sql檔案了。難點就在這了,為了讓sqlserver能聽懂,這裡需要把所有的int(xx)替換成int,bit(1)替換成[bin],把所有的KEY行(在mysql裡KEY好像是指索引)删掉,之後手動建索引。然後把改好的SQL腳本放到查詢分析器裡一執行,OK,表建好了!現在就需要導資料了。方法就是SQL server的導入資料向導,但是首先要做的是安裝mysql-connector-odbc-5.1.5-win32.msi,然後建一個MySQL類型的DSN資料源,這樣就可以用導入資料向導導入了,源位置時候選擇Mysql ODBC 5.1 driver,然後選擇剛剛建好的資料源。之後就和普通的導入資料沒有差別了。至此,大功告成!

1.安裝mysql資料庫的ODBC驅動,mysql-connector-odbc-3.51.19-win32.msi

  2.打開控制台/管理工具/資料源ODBC,在使用者DSN中添加一個MySQL ODBC 3.51資料源。

  3.在登入login頁籤中輸入資料源名稱Data Source Name,此處輸入MysqlDNS;然後輸入伺服器Server,使用者User,密碼Password,輸入正确後選擇要導入的資料庫。在連接配接選項connect options中根據需要設定MySql使用的端口port和字元集Character Set。

  注:字元集一定要和Mysql伺服器相對應,如果Mysql使用了gbk字元集,則一定要設定字元集為gbk,否則導入到Sql Server可能會出現問号亂碼。

  4.打開sql server企業管理器,建立一資料庫MySql。選擇該資料庫,單擊右鍵選擇所有任務/導入資料。

  5.選擇資料源為其它(ODBC資料源),使用者/系統DSN為MysqlDNS。其餘根據向導進行,即可将資料從MySql資料庫導入到MSSQL資料庫中。