Menjalankan Konsol SSMA (OracleToSQL)

Microsoft memberi Anda serangkaian perintah file skrip yang kuat untuk menjalankan dan mengontrol aktivitas SSMA. Aplikasi konsol menggunakan perintah file skrip standar tertentu seperti yang dijumlahkan di bagian ini.

Perintah File Skrip Project

Perintah Project menangani pembuatan proyek, membuka, menyimpan, dan keluar dari proyek.

Perintah

create-new-project
: Membuat proyek SSMA baru.

Skrip

  • project-folder menunjukkan folder proyek yang dibuat.

  • project-name menunjukkan nama proyek. {string}

  • overwrite-if-existsAtribut opsional menunjukkan apakah proyek yang ada harus ditimpa. {boolean}

  • project-type:Atribut opsional. Menunjukkan jenis proyek yaitu proyek "sql-server-2005" atau proyek "sql-server-2008" atau proyek "sql-server-2012" atau proyek "sql-server-2014" atau "sql-azure". Defaultnya adalah "sql-server-2014".

Contoh:

<create-new-project  
  
   project-folder="<project-folder>"  
  
   project-name="<project-name>"  
  
   overwrite-if-exists="<true/false>"   (optional)  
  
   project-type="<sql-server-2008 | sql-server-2005 | sql-server-2012 | sql-server-2014>"   (optional)  
  
/>  

Atribut 'overwrite-if-exists' adalah false secara default.

Atribut 'project-type' adalah sql-server-2008 secara default.

Perintah

open-project: Membuka proyek yang sudah ada.

Skrip

  • project-folder menunjukkan folder proyek yang dibuat. Perintah gagal jika folder yang ditentukan tidak ada. {string}

  • project-name menunjukkan nama proyek. Perintah gagal jika proyek yang ditentukan tidak ada. {string}

Contoh Sintaks:

<open-project  
  
   project-folder="<project-folder>"  
  
   project-name="<project-name>"  
  
/>  

SSMA untuk Aplikasi Konsol Oracle mendukung kompatibilitas mundur. Anda akan dapat membuka proyek yang dibuat oleh versi SSMA sebelumnya.

Perintah

save-project

Menyimpan proyek migrasi.

Skrip

Contoh Sintaks:

<save-project/>  

Perintah

close-project

Menutup proyek migrasi.

Skrip

Contoh Sintaks:

<close-project  
  
   if-modified="<save/error/ignore>"   (optional)  
  
/>  

Perintah File Skrip Koneksi Database

Perintah Koneksi Database membantu menyambungkan ke database.

Perintah

connect-source-database

  • Melakukan koneksi ke database sumber dan memuat metadata tingkat tinggi dari database sumber tetapi tidak semua metadata.

  • Jika koneksi ke sumber tidak dapat dibuat, kesalahan dihasilkan dan aplikasi konsol menghentikan eksekusi lebih lanjut

Skrip

Definisi server diambil dari atribut nama yang ditentukan untuk setiap koneksi di bagian server dari file koneksi server atau file skrip.

Contoh Sintaks:

<connect-source-database  server="<server-unique-name>"/>  

Perintah

force-load-source/target-database

  • Memuat metadata sumber.

  • Berguna untuk mengerjakan proyek migrasi secara offline.

  • Jika koneksi ke sumber/target tidak dapat dibuat, kesalahan dihasilkan dan aplikasi konsol menghentikan eksekusi lebih lanjut

Skrip

Membutuhkan satu atau beberapa simpul metabase sebagai parameter baris perintah.

Contoh Sintaks:

<force-load object-name="<object-name>"  
  
  metabase="<source/target>"/>  

atau

<force-load>  
  
   <metabase-object object-name="<object-name>"/>  
  
</force-load>  

Perintah

menyambungkan kembali database sumber

  • Menyambungkan kembali ke database sumber tetapi tidak memuat metadata apa pun tidak seperti perintah connect-source-database.

  • Jika (re)koneksi dengan sumber tidak dapat dibuat, kesalahan dihasilkan dan aplikasi konsol menghentikan eksekusi lebih lanjut.

Skrip

Contoh Sintaks:

<reconnect-source-database  server="<server-unique-name>"/>  

Perintah

connect-target-database

  • Menyambungkan ke database SQL Server target dan memuat metadata tingkat tinggi dari database target tetapi bukan metadata sepenuhnya.

  • Jika koneksi ke target tidak dapat dibuat, kesalahan dihasilkan dan aplikasi konsol menghentikan eksekusi lebih lanjut.

Skrip

Definisi server diambil dari atribut nama yang ditentukan untuk setiap koneksi di bagian server dari file koneksi server atau file skrip

Contoh Sintaks:

<connect-target-database  server="<server-unique-name>"/>  

Perintah

menyambungkan kembali database target

  • Menyambungkan kembali ke database target tetapi tidak memuat metadata apa pun, tidak seperti perintah connect-target-database.

  • Jika (re)koneksi ke target tidak dapat dibuat, kesalahan dihasilkan dan aplikasi konsol menghentikan eksekusi lebih lanjut.

Skrip

Contoh Sintaks:

<reconnect-target-database  server="<server-unique-name>"/>  

Perintah File Skrip Laporan

Perintah Laporan menghasilkan laporan tentang performa berbagai aktivitas Konsol SSMA.

Perintah

generate-assessment-report

  • Menghasilkan laporan penilaian pada database sumber.

  • Jika koneksi database sumber tidak dilakukan sebelum menjalankan perintah ini, kesalahan akan dihasilkan dan aplikasi konsol keluar.

  • Kegagalan untuk menyambungkan ke server database sumber selama eksekusi perintah, juga menghasilkan penghentian aplikasi konsol.

Skrip

  • conversion-report-folder: Menentukan folder tempat laporan penilaian dapat disimpan. (atribut opsional)

  • object-name: Menentukan objek yang dipertimbangkan untuk pembuatan laporan penilaian (Dapat memiliki nama objek indivdual atau nama objek grup).

  • object-type: menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • conversion-report-overwrite: Menentukan apakah akan menimpa folder laporan penilaian jika sudah ada.

    Nilai default: false. (atribut opsional)

  • write-summary-report-to: Menentukan jalur tempat laporan ringkasan akan dibuat.

    Jika hanya jalur folder yang disebutkan, maka file menurut nama AssessmentReportn<>.XML dibuat. (atribut opsional)

    Pembuatan laporan memiliki dua sub-kategori lebih lanjut:

    • report-errors (="true/false", dengan default sebagai "false" (atribut opsional))

    • verbose (="true/false", dengan default sebagai "false" (atribut opsional))

Contoh Sintaks:

<generate-assessment-report  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   assessment-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

atau

<generate-assessment-report  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
>  
  
      <metabase-object object-name="<object-name>"  
  
         object-type="<object-category>"/>  
  
</generate-assessment-report>  

Perintah File Skrip Migrasi

Perintah Migrasi mengonversi skema database target ke skema sumber dan memigrasikan data ke server target.

Pengaturan output konsol default untuk perintah migrasi adalah laporan output 'Penuh' tanpa pelaporan kesalahan terperinci: Hanya ringkasan pada simpul akar pohon objek sumber.

Perintah

convert-schema

  • Melakukan konversi skema dari sumber ke skema target.

  • Jika koneksi database sumber atau target tidak dilakukan sebelum menjalankan perintah ini atau koneksi ke server database sumber atau target gagal selama eksekusi perintah, kesalahan dihasilkan dan aplikasi konsol keluar.

Skrip

  • conversion-report-folder: Menentukan folder tempat laporan penilaian dapat disimpan. (atribut opsional)

  • object-name: Menentukan objek sumber yang dipertimbangkan untuk mengonversi skema (Dapat memiliki nama objek indivdual atau nama objek grup).

  • object-type: menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • conversion-report-overwrite: Menentukan apakah akan menimpa folder laporan penilaian jika sudah ada.

    Nilai default: false. (atribut opsional)

  • write-summary-report-to: Menentukan jalur di mana laporan ringkasan akan dibuat.

    Jika hanya jalur folder yang disebutkan, maka file berdasarkan nama SchemaConversionReportn<>.XML dibuat. (atribut opsional)

    Pembuatan laporan memiliki dua sub-kategori lebih lanjut:

    • report-errors (="true/false", dengan default sebagai "false" (atribut opsional))

    • verbose (="true/false", dengan default sebagai "false" (atribut opsional))

Contoh Sintaks:

<convert-schema  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

atau

<convert-schema  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
      <metabase-object object-name="<object-name>"  
  
         object-type="<object-category>"/>  
  
</convert-schema>  

Perintah

migrate-data

Memigrasikan data sumber ke target.

Skrip

  • conversion-report-folder: Menentukan folder tempat laporan penilaian dapat disimpan. (atribut opsional)

  • object-name: Menentukan objek sumber yang dipertimbangkan untuk memigrasikan data (Dapat memiliki nama objek indivdual atau nama objek grup).

  • object-type: menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • conversion-report-overwrite: Menentukan apakah akan menimpa folder laporan penilaian jika sudah ada.

    Nilai default: false. (atribut opsional)

  • write-summary-report-to: Menentukan jalur di mana laporan ringkasan akan dibuat.

    Jika hanya jalur folder yang disebutkan, maka file berdasarkan nama DataMigrationReportn<>.XML dibuat. (atribut opsional)

    Pembuatan laporan memiliki dua sub-kategori lebih lanjut:

    • report-errors (="true/false", dengan default sebagai "false" (atribut opsional))

    • verbose (="true/false", dengan default sebagai "false" (atribut opsional))

Contoh Sintaks:

<migrate-data  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="<true/false>"  
  
   verbose="<true/false>">  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <data-migration-connection  
  
         source-use-last-used="true"/source-server="<server-unique-name>"  
  
         target-use-last-used="true"/target-server="<server-unique-name>"/>  
  
</migrate-data>  

atau

<migrate-data  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="<true/false>"  
  
   verbose="<true/false>"/>  

Perintah File Skrip Persiapan Migrasi

Perintah Persiapan Migrasi memulai pemetaan skema antara database sumber dan target.

Perintah

skema peta

Pemetaan skema database sumber ke skema target.

Memigrasikan data sumber ke target.

Skrip

  • source-schema menentukan skema sumber yang ingin kami migrasikan.

  • sql-server-schema menentukan skema target tempat kita ingin dimigrasikan.

Contoh Sintaks:

<map-schema  
  
   source-schema="<source-schema>"  
  
   sql-server-schema="<target-schema>"/>  

Perintah File Skrip Pengelolaan

Perintah Pengelolaan membantu menyinkronkan objek database target dengan database sumber. Pengaturan output konsol default untuk perintah migrasi adalah laporan output 'Penuh' tanpa pelaporan kesalahan terperinci: Hanya ringkasan pada simpul akar pohon objek sumber.

Perintah

synchronize-target

  • Menyinkronkan objek target dengan database target.

  • Jika perintah ini dijalankan terhadap database sumber, terjadi kesalahan.

  • Jika koneksi database target tidak dilakukan sebelum menjalankan perintah ini atau koneksi ke server database target gagal selama eksekusi perintah, kesalahan dihasilkan dan aplikasi konsol keluar.

Skrip

  • object-name: Menentukan objek target yang dipertimbangkan untuk disinkronkan dengan database target (Dapat memiliki nama objek indivdual atau nama objek grup).

  • object-type: menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • on-error: Menentukan apakah akan menentukan kesalahan sinkronisasi sebagai peringatan atau kesalahan. Opsi yang tersedia untuk kesalahan:

    • report-total-as-warning

    • report-each-as-warning

    • fail-script

  • report-errors-to: Menentukan lokasi laporan kesalahan untuk operasi sinkronisasi (atribut opsional) jika hanya jalur folder yang diberikan, maka file menurut nama TargetSynchronizationReport.XML dibuat.

Contoh Sintaks:

<synchronize-target  
  
   object-name="<object-name>"  
  
   on-error="<report-total-as-warning/  
  
               report-each-as-warning/  
  
               fail-script>"   (optional)  
  
   report-errors-to="<file-name/folder-name>"   (optional)  
  
/>  

atau

<synchronize-target  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"/>  

atau

<synchronize-target>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
</synchronize-target>  

Perintah

refresh-from-database

  • Menyegarkan objek sumber dari database.

  • Jika perintah ini dijalankan terhadap database target, kesalahan akan dihasilkan.

Skrip

Membutuhkan satu atau beberapa simpul metabase sebagai parameter baris perintah.

  • object-name: Menentukan objek sumber yang dipertimbangkan untuk refresh dari database sumber (Dapat memiliki nama objek individual atau nama objek grup).

  • object-type: Menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • on-error: Menentukan apakah akan menentukan kesalahan refresh sebagai peringatan atau kesalahan. Opsi yang tersedia untuk kesalahan:

    • report-total-as-warning

    • report-each-as-warning

    • fail-script

  • report-errors-to: Menentukan lokasi laporan kesalahan untuk operasi refresh (atribut opsional) jika hanya jalur folder yang diberikan, maka file menurut nama SourceDBRefreshReport.XML dibuat.

Contoh Sintaks:

<refresh-from-database  
  
   object-name="<object-name>"  
  
   on-error="<report-total-as-warning/  
  
               report-each-as-warning/  
  
               fail-script>"   (optional)  
  
   report-errors-to="<file-name/folder-name>"   (optional)  
  
/>  

atau

<refresh-from-database  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"/>  

atau

<refresh-from-database>  
  
   <metabase-object object-name="<object-name>"/>  
  
</refresh-from-database>  

Perintah File Skrip Generasi Skrip

Perintah Pembuatan Skrip melakukan tugas ganda: Perintah ini membantu menyimpan output konsol dalam file skrip; dan rekam output T-SQL ke konsol atau file berdasarkan parameter yang Anda tentukan.

Perintah

simpan sebagai skrip

Digunakan untuk menyimpan skrip objek ke file yang disebutkan ketika metabase=target, ini adalah alternatif untuk perintah sinkronisasi di mana dalam kita mendapatkan skrip dan menjalankan yang sama pada database target.

Skrip

Membutuhkan satu atau beberapa simpul metabase sebagai parameter baris perintah.

  • object-name: Menentukan objek yang skripnya akan disimpan. (Ini dapat memiliki nama objek individual atau nama objek grup)

  • object-type: menentukan jenis objek yang ditentukan dalam atribut object-name (jika kategori objek ditentukan maka jenis objek akan menjadi "kategori").

  • metabase: Menentukan apakah metabase sumber atau target ithe.

  • destination: Menentukan jalur atau folder tempat skrip harus disimpan, jika nama file tidak diberikan maka nama file dalam format (object_name nilai atribut).out

  • overwrite: jika true maka akan menimpa jika ada nama file yang sama. Ini dapat memiliki nilai (true/false).

Contoh Sintaks:

<save-as-script  
  
   metabase="<source/target>"  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   destination="<file/folder>"  
  
   overwrite="<true/false>"   (optional)  
  
/>  

atau

<save-as-script  
  
   metabase="<source/target>"  
  
   destination="<file/folder>"  
  
      <metabase-object object-name="<object-name>"  
  
         object-type="<object-category>"/>  
  
</save-as-script>  

Perintah

convert-sql-statement

  • context menentukan nama skema.

  • destination menentukan apakah output harus disimpan dalam file.

    Jika atribut ini tidak ditentukan, maka pernyataan T-SQL yang dikonversi ditampilkan di konsol. (atribut opsional)

  • conversion-report-folder menentukan folder tempat laporan penilaian dapat disimpan. (atribut opsional)

  • conversion-report-overwrite menentukan apakah akan menimpa folder laporan penilaian jika sudah ada.

    Nilai default: false. (atribut opsional)

  • write-converted-sql-tomenentukan jalur folder file (atau) tempat T-SQL yang dikonversi akan disimpan. Ketika jalur folder ditentukan bersama dengan sql-files atribut , setiap file sumber akan memiliki file T-SQL target yang sesuai yang dibuat di bawah folder yang ditentukan. Ketika jalur folder ditentukan bersama dengan sql atribut , T-SQL yang dikonversi ditulis ke file bernama Result.out di bawah folder yang ditentukan.

  • sql menentukan pernyataan sql Oracle yang akan dikonversi, satu atau beberapa pernyataan dapat dipisahkan menggunakan ";"

  • sql-filesmenentukan jalur file sql yang harus dikonversi ke kode T-SQL.

  • write-summary-report-to menentukan jalur tempat laporan akan dibuat. Jika hanya jalur folder yang disebutkan, maka file menurut nama ConvertSQLReport.XML dibuat. (atribut opsional)

    Pembuatan laporan memiliki 2 sub-kategori lebih lanjut, viz.:

    • report-errors (="true/false", dengan default sebagai "false" (atribut opsional)).

    • verbose (="true/false", dengan default sebagai "false" (atribut opsional)).

Skrip

Membutuhkan satu atau beberapa simpul metabase sebagai parameter baris perintah.

Contoh Sintaks:

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   destination="<stdout/file>"   (optional)  
  
   file-name="<file-name>"  
  
   sql="SELECT 1 FROM DUAL;">  
  
   <output-window suppress-messages="<true/false>" />  
  
</convert-sql-statement>  

atau

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>" (optional)  
  
   verbose="<true/false>" (optional)  
  
   report-errors="<true/false>"  
  
   destination="<stdout/file>"   (optional)  
  
   write-converted-sql-to="<file-name/folder-name>"  
  
   sql-files="<folder-name>\*.sql" />  

atau

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   sql-files="<folder-name>\*.sql" />  

Langkah Selanjutnya

Untuk informasi tentang opsi baris perintah, lihat Opsi Baris Perintah di Konsol SSMA (OracleToSQL) .

Untuk informasi tentang Sampel file skrip konsol, lihat Bekerja dengan File Skrip Konsol Sampel (OracleToSQL)

Langkah selanjutnya tergantung pada persyaratan proyek Anda: