国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

在異種機(jī)之間實現(xiàn)數(shù)據(jù)庫遷移

2024-07-21 02:36:23
字體:
供稿:網(wǎng)友

  在異種機(jī)之間進(jìn)行數(shù)據(jù)庫遷移是一件麻煩的事,但有時候為了進(jìn)行數(shù)據(jù)庫升級或其他原因又必須進(jìn)行這種操作,我在工作中就碰到了這種情況,要求是將原來在vax機(jī)(操作系統(tǒng)為open vms)上的生產(chǎn)治理庫PRocdb(sybase數(shù)據(jù)庫)遷移到alpha機(jī)(操作系統(tǒng)為digital unix)上。 借助syabse的power designer和unix的shell命令可以很方便地完成此項工作。
  具體過程如下:
  一、ALPHA服務(wù)器上建立新的數(shù)據(jù)庫procdb
  1.建立生產(chǎn)治理庫procdb
  #isql -Usa -Pxxxxxxx
  1>create database procdb
  2>on data1_dev=60
  3>log on data2_dev=60
  4>with override
  5>go
  2.增加新用戶
  1>use master
  2>go
  3>sp_addlogin sss,xxxxxxxxxx,procdb
  4>go
  5>use procdb
  6>sp_changedbowner sss
  7>go
  二、生產(chǎn)治理庫procdb的移植
  1.使用PowerDesigner 從vax上的procdb中移出數(shù)據(jù)庫結(jié)構(gòu)
  * 運(yùn)行PowerDesigner;
  * 選擇File菜單下的Reverse Engineering …;
  * 連接到vax上的procdb數(shù)據(jù)庫;
  * 遷移庫結(jié)構(gòu);
  * 保存該文件。
  2.將從vax獲取的數(shù)據(jù)庫結(jié)構(gòu)移入alpha機(jī)的procdb數(shù)據(jù)庫
  * 連接到alpha上的procdb數(shù)據(jù)庫;
  * 選擇Database菜單下的Gernate Database。將數(shù)據(jù)庫表結(jié)構(gòu)寫入alpha機(jī)的procdb數(shù)據(jù)庫;
  * 執(zhí)行Database菜單下的Gernate Trigger and Procedure,將存儲過程和觸發(fā)器寫入alpha機(jī)的procdb數(shù)據(jù)庫;
  3.?dāng)?shù)據(jù)遷移
  * 注冊到unix機(jī)上,用select 語句選出Procdb數(shù)據(jù)庫中的表并且輸出到文件tabname.txt中:
  #isql -U sss -P xxxxx -o tabname.txt
  1> select name from sysobjects
  2> where type ='U'
  3> go
  * 建立awk.out文件,用于產(chǎn)生從vax機(jī)上讀取數(shù)據(jù)的bcp命令批:
  # vi awk.out
  awk.out
  {
  print "bcp" $1"out "$1".dat -U sss -P xxxxx -S vax_sybase -c"
  }
  * 產(chǎn)生讀取數(shù)據(jù)的bcp文件bcp.out
  #awk -f awk.out tabname.txt >bcp.out
  產(chǎn)生的bcp.out文件格式如下:
  bcp table1 out table1.dat -U sss -P xxxxx -S vax_sybase -c
  bcp table2 out table2.dat -U sss -P xxxxx -S vax_sybase -c
  bcp table3 out table3.dat -U sss -P xxxxx -S vax_sybase -c
       .
       .
       .
  * 建立awk.in文件,用于產(chǎn)生寫入數(shù)據(jù)到alpha機(jī)上的bcp命令批:
  awk.in
  {
  print "bcp" $1"in "$1".dat -U sss -P xxxxx -S alpha_sybse -c"
  }
  * 建立用于插入數(shù)據(jù)的bcp文件bcp.in
  #awk -f awk.in tabname.txt >bcp.in
  產(chǎn)生的bcp.out文件格式如下:
  bcp table1 in table1.dat -U sss -P xxxxx -S vax_sybase -c
  bcp table2 in table2.dat -U sss -P xxxxx -S vax_sybase -c
  bcp table3 in table3.dat -U sss -P xxxxx -S vax_sybase -c
       .
       .
       .
  
  * 執(zhí)行這兩個bcp文件
  #ksh bcp.out
  #ksh bck.in
  自此,數(shù)據(jù)庫遷移完成,以上代碼在digital unix上運(yùn)行通過。power designer在Win98上運(yùn)行。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿图什市| 隆安县| 察雅县| 清水河县| 南郑县| 高唐县| 洛隆县| 兴文县| 郯城县| 德保县| 年辖:市辖区| 呼和浩特市| 清水河县| 勃利县| 万盛区| 奈曼旗| 无棣县| 清水县| 青神县| 罗江县| 顺平县| 梧州市| 疏勒县| 马公市| 福安市| 德钦县| 页游| 凤台县| 秦安县| 新晃| 女性| 中方县| 哈尔滨市| 德兴市| 金溪县| 东辽县| 宣威市| 平阳县| 仙居县| 乐至县| 博罗县|