1
10年積累的成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有下城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
將要導(dǎo)入的庫(kù)的所有表的表結(jié)構(gòu)(不要表數(shù)據(jù),只要表結(jié)構(gòu))導(dǎo)出成一個(gè).sql文件。
2
在PowerDesinger里找到 File -- Reverse Engineer --- Database ;
3
在彈出的“New
Physcal Data Model”窗口界面,選擇“share the DBMS
definition”然后點(diǎn)擊確定。注意,數(shù)據(jù)庫(kù)也要選擇和自己現(xiàn)在的SQL的數(shù)據(jù)庫(kù)對(duì)應(yīng)的,我的數(shù)據(jù)庫(kù)是oracle
10g的,所有我也選擇了oracle 10g。
點(diǎn)擊“確定”以后出現(xiàn)如下圖
4
選“Using script files”,點(diǎn)下側(cè)的添加按鈕,添加X(jué)XX.sql文件,然后選擇“確定 ”。
5
轉(zhuǎn)換成mysql適用的數(shù)據(jù)庫(kù),從菜單欄上“Database”---“Change Current DBMS”
6
彈出“Change the Traget DBMS”窗口界面,在窗口界面里“General”---“New DBMS”---“MySql 5.0”,點(diǎn)擊“確定”。
7
“確定”后,你剛才導(dǎo)入oracle的sql現(xiàn)在產(chǎn)生的sql語(yǔ)句就是mysql
5.0的,按快捷鍵ctrl+G導(dǎo)出mysql的sql文件,快捷鍵后,彈出“Database Generation”窗口界面,把File
Name修改導(dǎo)出的文件名,我的是jm.sql
1.修改數(shù)據(jù)庫(kù)連接字符串:
如:
驅(qū)動(dòng)器com.mysql.jdbc.Driver 改為 oracle.jdbc.driver.OracleDriver
連接字符串jdbc:mysql://localhost:3306/xxx 改為 jdbc:oracle:thin:@localhost:1521:sid
2.調(diào)整SQL語(yǔ)句:
如:
分頁(yè)查詢SELECT * FROM TABLE_NAME LIMIT 1, 20 改為 SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A WHERE ROWNUM = 20) WHERE RN = 1
3.將mysql庫(kù)中的數(shù)據(jù)導(dǎo)入到oracle庫(kù):
可以手工進(jìn)行,如將mysql中的數(shù)據(jù)轉(zhuǎn)儲(chǔ)為sql文,作下調(diào)整,在oracle中執(zhí)行;
建議使用相關(guān)工具,如Oracle SQL Developer。
4.將連接數(shù)據(jù)庫(kù)的jar包換成oracle的。
mssql與mysql無(wú)論是功能上、語(yǔ)法和內(nèi)置函數(shù)等方面都有很大的區(qū)別,將mssql數(shù)據(jù)庫(kù)轉(zhuǎn)為mysql數(shù)據(jù)庫(kù),一般只能根據(jù)原本數(shù)據(jù)庫(kù)對(duì)象如數(shù)據(jù)結(jié)構(gòu)、存儲(chǔ)過(guò)程、自定義函數(shù)等的定義,以mysql的語(yǔ)法和方式重新定義,工作量可能會(huì)是巨大和復(fù)雜的,然后再將mssql數(shù)據(jù)表數(shù)據(jù)導(dǎo)出為txt文件,重新定義好的mysql數(shù)據(jù)庫(kù)再?gòu)膖xt文件導(dǎo)入數(shù)據(jù),當(dāng)然數(shù)據(jù)導(dǎo)入工作也可以通過(guò)應(yīng)用程序編程的方式實(shí)現(xiàn)高效數(shù)據(jù)導(dǎo)入。
我不知到市面是否存在mssql和mysql之間的轉(zhuǎn)換工具,但是由于數(shù)據(jù)庫(kù)管理系統(tǒng)和應(yīng)用的復(fù)雜性,個(gè)人認(rèn)為,不同廠商數(shù)據(jù)庫(kù)間實(shí)現(xiàn)完全的自動(dòng)轉(zhuǎn)換幾乎是一個(gè)無(wú)法完成的任務(wù)。
JIRA使用自帶的嵌入式數(shù)據(jù)庫(kù)還是比較快的,不過(guò)占用內(nèi)存太大。所以考慮將JIRA遷移到別的數(shù)據(jù)庫(kù)上,遷移到oracle10g后,發(fā)現(xiàn)速度比較慢,聽(tīng)朋友說(shuō)MYSQL不錯(cuò),就準(zhǔn)備遷移到MYSQL上。遷移過(guò)程很簡(jiǎn)單1.將項(xiàng)目導(dǎo)出成XML文件。2、停止JIRA服務(wù)。3.安裝MYSQL,最好將MYSQL的字符集設(shè)置為UTF-8.在服務(wù)啟動(dòng)所使用的my.ini中修改。default-character-set=utf84.創(chuàng)建MYSQL數(shù)據(jù)庫(kù),create database jiradb character set utf8;,如果不是UTF8的字符集,長(zhǎng)的文本導(dǎo)入時(shí)會(huì)報(bào)錯(cuò),無(wú)法導(dǎo)入。5.創(chuàng)建連接用戶,密碼。 如果連接的是遠(yuǎn)程的數(shù)據(jù)庫(kù),請(qǐng)?jiān)谟脩襞渲弥蠬OSTNAME這一欄,標(biāo)明應(yīng)用服務(wù)器的IP。(我用Navicat mysql配置MYSQL數(shù)據(jù)庫(kù)的)6.修改conf/server.xmlContext path="" docBase="${catalina.home}/atlassian-jira" reloadable="false"
Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
username="[enter db username]"
password="[enter db password]"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/jiradb?autoReconnect=trueuseUnicode=truecharacterEncoding=UTF8"
[ 刪除這兒的 minEvictableIdleTimeMillis 和 timeBetweenEvictionRunsMillis 參數(shù)配置] /7、配置 JIRA Entity Engine!-- DATASOURCE - You will need to update this tag for your installation.
--
datasource name="defaultDS" field-type-name="mysql"
[ 如果這句存在的話,請(qǐng)刪除。schema-name="PUBLIC" ]8.MySQL driver 將MySQL JDBC 驅(qū)動(dòng) (mysql-connector-java-3.x.x-bin.jar) 放在common/lib/ 目錄下,否則會(huì)報(bào)連接不到數(shù)據(jù)庫(kù)的錯(cuò)誤。注意,在CLASSPATH不要放Debug版本的驅(qū)動(dòng) (mysql-connector-java-3.x.x-bin-g.jar) 否則會(huì)引起這個(gè)錯(cuò)誤(JRA-8674).9.啟動(dòng)JIRA,看一下有沒(méi)有錯(cuò)誤。一般如果報(bào)用戶名密碼不對(duì),嘗試三次連接的,請(qǐng)檢查你的用戶密碼。報(bào)連接不到MYSQL的,請(qǐng)檢查你的MYSQL 驅(qū)動(dòng)。啟動(dòng)完成后,進(jìn)入JIRA安裝頁(yè)面,將備份的XML文件導(dǎo)入就OK了。
建議使用PowerDesigner將ORACLE轉(zhuǎn)換為物理模型,再轉(zhuǎn)換為邏輯模型,然后通過(guò)這個(gè)邏輯模型重新選擇DBMS(MYSQL),將其轉(zhuǎn)換為MYSQL的物理邏輯模型。
在物理邏輯模型上更新觸發(fā)器,過(guò)程等對(duì)象,然后生成MYSQL的物理文件,或直接導(dǎo)入到MYSQL數(shù)據(jù)庫(kù)實(shí)例中。
您好,很高興為您解答。\x0d\x0a\x0d\x0a1、MYSQL的工具使用navicat;\x0d\x0a2、SQL在安裝的時(shí)候,需要安裝SQL native Clent,并且開(kāi)啟服務(wù);\x0d\x0a3、在navicat中創(chuàng)建數(shù)據(jù)連接,創(chuàng)建一個(gè)對(duì)應(yīng)的空數(shù)據(jù)庫(kù)\x0d\x0a4、創(chuàng)建數(shù)據(jù)庫(kù)后,打開(kāi)數(shù)據(jù)庫(kù),選擇導(dǎo)入向?qū)x0d\x0a\x0d\x0a5、導(dǎo)入向?qū)Ю?,選擇ODBC\x0d\x0a\x0d\x0a6、點(diǎn)下一步,導(dǎo)入里面選擇sql native client;\x0d\x0a\x0d\x0a7、下一步,選擇使用windows NT 集成安全設(shè)置,數(shù)據(jù)庫(kù)選擇你要轉(zhuǎn)換的數(shù)據(jù)庫(kù),確定\x0d\x0a\x0d\x0a8、如表結(jié)構(gòu)完全一樣,那么就全選數(shù)據(jù)表吧,確定,因我們是新建的數(shù)據(jù)庫(kù),里面是空的,那么默認(rèn)是創(chuàng)建表,如果是要導(dǎo)入到已經(jīng)有的表結(jié)構(gòu)里,則在目標(biāo)表里選擇要導(dǎo)入的目標(biāo)表,然后選字段。注意在第6步的時(shí)候,選對(duì)表的主鍵進(jìn)行設(shè)置!\x0d\x0a\x0d\x0a9、如果是添加數(shù)據(jù),則選擇:添加記錄到目標(biāo)表;如果是需要ID值跟源數(shù)據(jù)庫(kù)一致,則選擇復(fù)制,刪除目標(biāo)全部數(shù)據(jù),并從源數(shù)據(jù)重新導(dǎo)入\x0d\x0a\x0d\x0a注意,導(dǎo)入的時(shí)候,如果是已存在表結(jié)構(gòu),則鍵位不能空,如果是添加數(shù)據(jù),則ID值空著,不要添加主鍵,在導(dǎo)入過(guò)程中如果出現(xiàn)錯(cuò)誤,則根據(jù)出錯(cuò)提示處理,此方法絕對(duì)可以!\x0d\x0a\x0d\x0a如若滿意,請(qǐng)點(diǎn)擊右側(cè)【采納答案】,如若還有問(wèn)題,請(qǐng)點(diǎn)擊【追問(wèn)】\x0d\x0a\x0d\x0a希望我的回答對(duì)您有所幫助,望采納!\x0d\x0a\x0d\x0a ~ O(∩_∩)O~