mssql轉(zhuǎn)換mysql的方法小結(jié)
更新時間:2011年03月01日 14:53:35 作者:
mssql轉(zhuǎn)換mysql的方法小結(jié),需要的朋友可以參考下。
方法一:
1.導(dǎo)表結(jié)構(gòu)
使用MySQL生成create腳本的方法。找到生成要導(dǎo)出的腳本,按MySQL的語法修改一下到MySQL數(shù)據(jù)庫中創(chuàng)建該表的列結(jié)構(gòu)什么的。
2.導(dǎo)表數(shù)據(jù)
在MSSQL端使用bcp導(dǎo)出文本文件:
bcp "Select * FROM dbname.dbo.tablename;" queryout tablename.txt -c -Slocalhost\db2005 -Usa
其中""中是要導(dǎo)出的sql語句,-c指定使用\t進行字段分隔,使用\n進行記錄分隔,-S指定數(shù)據(jù)庫服務(wù)器及實例,-U指定用戶名,-P指定密碼.
在MySQL端使用mysqlimport 導(dǎo)入文本文件到相應(yīng)表中
mysqlimport -uroot -p databasename /home/test/tablename.txt
其中-u指定用戶名,-p指定密碼,databasename指定數(shù)據(jù)庫名稱,表名與文件名相同。
方法二:
MYSQL Migration Toolkit 應(yīng)該是可以用的。
1、把MySQL Migration Toolkit安裝在運行有MS SQL server的機器上;
2、此機器還需要安裝java環(huán)境和jdbc驅(qū)動:
java環(huán)境去sun網(wǎng)站上下載,jdbc驅(qū)動去MySQL網(wǎng)站上下載(mysql-connector-java-5.0.5.zip),并且設(shè)置好路徑的環(huán)境變量;
3、如果你原來的數(shù)據(jù)庫里有中文字符,必須顯式設(shè)置幾個有關(guān)字符集的地方:
A. Source Database 選擇Database System為MS SQL:
這里需要手動寫jdbc連接串:點擊界面下方的Advanced鍵,出現(xiàn)一個方框,提示輸入 "Connection String:",在這里輸入如下格式:
jdbc:jtds:sqlserver://IP:PORT/YOURDB_NAME;user=USER;password=PASSWD;charset=gb2312(or gbk);domain=
其中,大寫 IP, PORT, YOURDB_NAME,USER, PASSWD都是要用實際MS SQL Server服務(wù)器的ip和端口,數(shù)據(jù)庫名,數(shù)據(jù)庫用戶名,密碼填寫;
B. Target Database 同樣需要手動編輯jdbc連接串:
點擊界面下方的Advanced鍵,出現(xiàn)一個方框,提示輸入"Connection String:"
在這里輸入如下格式:
jdbc:mysql://IP:3306/?user=USER&password=PASSWD&useServerPrepStmts=false&characterEncoding=gbk
其中,大寫 IP, USER, PASSWD都是要用實際MySQL服務(wù)器的ip,數(shù)據(jù)庫用戶名,密碼填寫
C. 選擇sql server的schema和表
D. Object Mapping
修改"Migration of type MSSQL Table":
點擊"Set Parameter",選擇"User defined", 設(shè)置"charset=gb2312(or gbk), collation=gb2312(or gbk)_chinese_ci"
E. 之后沒有別的選項,一直到最后
F. 移植完以后,用圖形工具(MySQL query browser、SQLyog等)或用mysql客戶端(命令行)聯(lián)接,都可以看到中文。
在客戶端(命令行),先執(zhí)行
mysql> set names gb2312(or gbk);
4、由于MS SQL server和MySQL在語法格式和數(shù)據(jù)類型定義等方面有一定的差異,所以移植過程不是很簡單,可能需要反復(fù)幾次,修正語法格式和數(shù)據(jù)類型定義。MySQL Migration toolkit可以讓用戶手動修改生成的MySQL SQL語句,在其中的"Manual Editing"一節(jié)
方法三:
13號微軟發(fā)布了最新的專用轉(zhuǎn)換工具,下面是地址,支持mysql to 2005或者2008
http://www.dbjr.com.cn/database/34633.html
官方下載地址
http://www.microsoft.com/downloads/details.aspx?FamilyID=c6f14640-da22-4604-aaaa-a45de4a0cd4a&displaylang=en
1.導(dǎo)表結(jié)構(gòu)
使用MySQL生成create腳本的方法。找到生成要導(dǎo)出的腳本,按MySQL的語法修改一下到MySQL數(shù)據(jù)庫中創(chuàng)建該表的列結(jié)構(gòu)什么的。
2.導(dǎo)表數(shù)據(jù)
在MSSQL端使用bcp導(dǎo)出文本文件:
bcp "Select * FROM dbname.dbo.tablename;" queryout tablename.txt -c -Slocalhost\db2005 -Usa
其中""中是要導(dǎo)出的sql語句,-c指定使用\t進行字段分隔,使用\n進行記錄分隔,-S指定數(shù)據(jù)庫服務(wù)器及實例,-U指定用戶名,-P指定密碼.
在MySQL端使用mysqlimport 導(dǎo)入文本文件到相應(yīng)表中
mysqlimport -uroot -p databasename /home/test/tablename.txt
其中-u指定用戶名,-p指定密碼,databasename指定數(shù)據(jù)庫名稱,表名與文件名相同。
方法二:
MYSQL Migration Toolkit 應(yīng)該是可以用的。
1、把MySQL Migration Toolkit安裝在運行有MS SQL server的機器上;
2、此機器還需要安裝java環(huán)境和jdbc驅(qū)動:
java環(huán)境去sun網(wǎng)站上下載,jdbc驅(qū)動去MySQL網(wǎng)站上下載(mysql-connector-java-5.0.5.zip),并且設(shè)置好路徑的環(huán)境變量;
3、如果你原來的數(shù)據(jù)庫里有中文字符,必須顯式設(shè)置幾個有關(guān)字符集的地方:
A. Source Database 選擇Database System為MS SQL:
這里需要手動寫jdbc連接串:點擊界面下方的Advanced鍵,出現(xiàn)一個方框,提示輸入 "Connection String:",在這里輸入如下格式:
jdbc:jtds:sqlserver://IP:PORT/YOURDB_NAME;user=USER;password=PASSWD;charset=gb2312(or gbk);domain=
其中,大寫 IP, PORT, YOURDB_NAME,USER, PASSWD都是要用實際MS SQL Server服務(wù)器的ip和端口,數(shù)據(jù)庫名,數(shù)據(jù)庫用戶名,密碼填寫;
B. Target Database 同樣需要手動編輯jdbc連接串:
點擊界面下方的Advanced鍵,出現(xiàn)一個方框,提示輸入"Connection String:"
在這里輸入如下格式:
jdbc:mysql://IP:3306/?user=USER&password=PASSWD&useServerPrepStmts=false&characterEncoding=gbk
其中,大寫 IP, USER, PASSWD都是要用實際MySQL服務(wù)器的ip,數(shù)據(jù)庫用戶名,密碼填寫
C. 選擇sql server的schema和表
D. Object Mapping
修改"Migration of type MSSQL Table":
點擊"Set Parameter",選擇"User defined", 設(shè)置"charset=gb2312(or gbk), collation=gb2312(or gbk)_chinese_ci"
E. 之后沒有別的選項,一直到最后
F. 移植完以后,用圖形工具(MySQL query browser、SQLyog等)或用mysql客戶端(命令行)聯(lián)接,都可以看到中文。
在客戶端(命令行),先執(zhí)行
mysql> set names gb2312(or gbk);
4、由于MS SQL server和MySQL在語法格式和數(shù)據(jù)類型定義等方面有一定的差異,所以移植過程不是很簡單,可能需要反復(fù)幾次,修正語法格式和數(shù)據(jù)類型定義。MySQL Migration toolkit可以讓用戶手動修改生成的MySQL SQL語句,在其中的"Manual Editing"一節(jié)
方法三:
13號微軟發(fā)布了最新的專用轉(zhuǎn)換工具,下面是地址,支持mysql to 2005或者2008
http://www.dbjr.com.cn/database/34633.html
官方下載地址
http://www.microsoft.com/downloads/details.aspx?FamilyID=c6f14640-da22-4604-aaaa-a45de4a0cd4a&displaylang=en
您可能感興趣的文章:
- MySQL隱式類型的轉(zhuǎn)換陷阱和規(guī)則
- Mysql 數(shù)字類型轉(zhuǎn)換函數(shù)
- 深入MYSQL字符數(shù)字轉(zhuǎn)換的詳解
- MySQL GBK→UTF-8編碼轉(zhuǎn)換
- MySQL中日期和時間戳互相轉(zhuǎn)換的函數(shù)和方法
- mysql中將null值轉(zhuǎn)換為0的語句
- Mysql中文漢字轉(zhuǎn)拼音的實現(xiàn)(每個漢字轉(zhuǎn)換全拼)
- PHP+Mysql日期時間如何轉(zhuǎn)換(UNIX時間戳和格式化日期)
- 將mysql轉(zhuǎn)換到oracle必須了解的50件事
- MySQL的隱式類型轉(zhuǎn)換整理總結(jié)
相關(guān)文章
一文詳解MySQL數(shù)據(jù)庫索引優(yōu)化的過程
在MySQL數(shù)據(jù)庫中,索引是一種關(guān)鍵的組件,它可以大大提高查詢的效率,但是,當數(shù)據(jù)量增大或者查詢復(fù)雜度增加時,索引的選擇和優(yōu)化變得至關(guān)重要,本文將記錄MySQL數(shù)據(jù)庫索引優(yōu)化的過程,以幫助開發(fā)人員更好地理解和應(yīng)用索引優(yōu)化技巧2023-06-06MYSQL數(shù)據(jù)庫使用UTF-8中文編碼亂碼的解決辦法
這篇文章主要介紹了MYSQL數(shù)據(jù)庫使用UTF-8中文編碼亂碼的解決辦法,需要的朋友可以參考下2015-10-10order?by?+?limit分頁時數(shù)據(jù)重復(fù)問題及解決方法
這篇文章主要介紹了order?by?+?limit分頁時數(shù)據(jù)重復(fù),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03MySQL數(shù)據(jù)庫備份和還原的常用命令小結(jié)
MySQL數(shù)據(jù)庫備份和還原的常用命令小結(jié),學(xué)習(xí)mysql的朋友可以參考下2012-03-03