Utilitas dtexec
Berlaku untuk: SQL Server SSIS Integration Runtime di Azure Data Factory
Utilitas prompt perintah dtexec digunakan untuk mengonfigurasi dan menjalankan paket SQL Server Integration Services. Utilitas dtexec menyediakan akses ke semua konfigurasi paket dan fitur eksekusi, seperti parameter, koneksi, properti, variabel, pengelogan, dan indikator kemajuan. Utilitas dtexec memungkinkan Anda memuat paket dari sumber ini: server Layanan Integrasi, file proyek .ispac, database Microsoft SQL Server, Penyimpanan Paket SSIS, dan sistem file.
Catatan
Saat Anda menggunakan versi utilitas dtexec saat ini untuk menjalankan paket yang dibuat oleh versi Integration Services yang lebih lama, utilitas untuk sementara meningkatkan paket ke format paket saat ini. Namun, Anda tidak dapat menggunakan utilitas dtexec untuk menyimpan paket yang ditingkatkan. Untuk informasi selengkapnya tentang cara meningkatkan paket secara permanen ke versi saat ini, lihat Meningkatkan Paket Layanan Integrasi.
Topik ini mencakup bagian berikut:
Server Layanan Integrasi dan File Proyek
Saat Anda menggunakan dtexec untuk menjalankan paket di server Integration Services, dtexec memanggil prosedur tersimpan catalog.create_execution (Database SSISDB), catalog.set_execution_parameter_value (Database SSISDB) dan catalog.start_execution (Database SSISDB) untuk membuat eksekusi, mengatur nilai parameter, dan memulai eksekusi. Semua log eksekusi dapat dilihat dari server dalam tampilan terkait atau dengan menggunakan laporan standar yang tersedia di SQL Server Management Studio. Untuk informasi selengkapnya tentang laporan, lihat Laporan untuk Server Layanan Integrasi.
Berikut ini adalah contoh menjalankan paket di server Integration Services.
DTExec /ISSERVER "\SSISDB\folderB\Integration Services Project17\Package.dtsx" /SERVER "." /Envreference 2 /Par "$Project::ProjectParameter(Int32)";1 /Par "Parameter(Int32)";21 /Par "CM.sqlcldb2.SSIS_repro.InitialCatalog";ssisdb /Par "$ServerOption::SYNCHRONIZED(Boolean)";True
Saat Anda menggunakan dtexec untuk menjalankan paket dari file proyek .ispac, opsi terkait adalah: /Proj[ect] dan /Pack[age] yang digunakan untuk menentukan jalur proyek dan nama aliran paket. Saat Anda mengonversi proyek ke model penyebaran proyek dengan menjalankan Wizard Konversi Proyek Layanan Integrasi dari SQL Server Management Studio, wizard menghasilkan file projek .ispac. Untuk informasi selengkapnya, lihat Menyebarkan Proyek dan Paket Integration Services (SSIS).
Anda dapat menggunakan dtexec dengan alat penjadwalan pihak ketiga untuk menjadwalkan paket yang disebarkan ke server Integration Services.
Pertimbangan Penginstalan pada Komputer 64-bit
Pada komputer 64-bit, Integration Services menginstal utilitas dtexec versi 64-bit (dtexec.exe). Jika Anda harus menjalankan paket tertentu dalam mode 32-bit, Anda harus menginstal utilitas dtexec versi 32-bit. Untuk menginstal utilitas dtexec versi 32-bit, Anda harus memilih Alat Klien atau SQL Server Data Tools (SSDT) selama penyiapan.
Secara default, komputer 64-bit yang memiliki versi 64-bit dan 32-bit dari utilitas prompt perintah Integration Services yang diinstal akan menjalankan versi 32-bit pada prompt perintah. Versi 32-bit berjalan karena jalur direktori untuk versi 32-bit muncul di variabel lingkungan PATH sebelum jalur direktori untuk versi 64-bit. (Biasanya, jalur direktori 32-bit adalah <drive>:\Program Files(x86)\Microsoft SQL Server\110\DTS\Binn, sedangkan jalur direktori 64-bit adalah< drive>:\Program Files\Microsoft SQL Server\110\DTS\Binn.)
Catatan
Jika Anda menggunakan SQL Server Agent untuk menjalankan utilitas, SQL Server Agent secara otomatis menggunakan utilitas versi 64-bit. SQL Server Agent menggunakan registri, bukan variabel lingkungan PATH, untuk menemukan executable yang benar untuk utilitas.
Untuk memastikan bahwa Anda menjalankan utilitas versi 64-bit di prompt perintah, Anda dapat mengambil salah satu tindakan berikut:
Buka jendela Prompt Perintah, ubah ke direktori yang berisi utilitas versi 64-bit (<drive>:\Program Files\Microsoft SQL Server\110\DTS\Binn), lalu jalankan utilitas dari lokasi tersebut.
Pada prompt perintah, jalankan utilitas dengan memasukkan jalur lengkap (<drive>:\Program Files\Microsoft SQL Server\110\DTS\Binn) ke utilitas versi 64-bit.
Ubah urutan jalur secara permanen dalam variabel lingkungan PATH dengan menempatkan jalur 64-bit (<drive>:\Program Files\Microsoft SQL Server\110\DTS\Binn) sebelum jalur 32-bit (<drive>:\ Program Files(x86)\Microsoft SQL Server\110\DTS\Binn) dalam variabel.
Pertimbangan di Komputer dengan Penginstalan Berdampingan
Ketika SQL Server 2019 Integration Services (SSIS) diinstal pada komputer yang memiliki SQL Server 2005 Integration Services (SSIS) atau SQL Server 2008 Integration Services (SSIS) diinstal, beberapa versi utilitas dtexec diinstal.
Untuk memastikan bahwa Anda menjalankan versi utilitas yang benar, pada prompt perintah jalankan utilitas dengan memasukkan jalur lengkap (<drive>:\Program Files\Microsoft SQL Server\<version>\DTS\Binn).
Fase Eksekusi
Utilitas memiliki empat fase yang dilanjutkan saat dijalankan. Fasenya adalah sebagai berikut:
Fase sumber perintah: Prompt perintah membaca daftar opsi dan argumen yang telah ditentukan. Semua fase berikutnya dilewati jika opsi /? atau /HELP ditemui.
Fase beban paket: Paket yang ditentukan oleh opsi /SQL, /FILE, atau /DTS dimuat.
Fase konfigurasi: Opsi diproses dalam urutan ini:
Opsi yang mengatur bendera paket, variabel, dan properti.
Opsi yang memverifikasi versi paket dan build.
Opsi yang mengonfigurasi perilaku run-time utilitas, seperti pelaporan.
Fase validasi dan eksekusi: Paket dijalankan, atau divalidasi tanpa berjalan jika opsi /VALIDATE ditentukan.
Kode Keluar dikembalikan
Kode keluar yang dikembalikan dari utilitas dtexec
Saat paket berjalan, dtexec dapat mengembalikan kode keluar. Kode keluar digunakan untuk mengisi variabel ERRORLEVEL, yang nilainya kemudian dapat diuji dalam pernyataan kondisional atau logika percabangan dalam file batch. Tabel berikut mencantumkan nilai yang dapat diatur utilitas dtexec saat keluar.
Nilai | Deskripsi |
---|---|
0 | Paket berhasil dijalankan. |
1 | Paket gagal. |
3 | Paket dibatalkan oleh pengguna. |
4 | Utilitas tidak dapat menemukan paket yang diminta. Paket tidak dapat ditemukan. |
5 | Utilitas tidak dapat memuat paket yang diminta. Paket tidak dapat dimuat. |
6 | Utilitas mengalami kesalahan internal kesalahan sinaktik atau semantik di baris perintah. |
Aturan Sintaks
Aturan sintaks utilitas
Semua opsi harus dimulai dengan garis miring (/) atau tanda minus (-). Opsi yang ditampilkan di sini dimulai dengan garis miring (/), tetapi tanda minus (-) dapat diganti.
Argumen harus diapit dalam tanda kutip jika berisi spasi. Jika argumen tidak diapit dalam tanda kutip, argumen tidak boleh berisi spasi kosong.
Tanda kutip ganda dalam string yang dikutip mewakili tanda kutip tunggal yang lolos.
Opsi dan argumen tidak peka huruf besar/kecil, kecuali untuk kata sandi.
Menggunakan dtexec dari xp_cmdshell
Menggunakan dtexec dari xp_cmdshell
Anda dapat menjalankan dtexec dari perintah xp_cmdshell . Contoh berikut menunjukkan cara menjalankan paket yang disebut UpsertData.dtsx dan mengabaikan kode pengembalian:
EXEC xp_cmdshell 'dtexec /f "C:\UpsertData.dtsx"'
Contoh berikut menunjukkan cara menjalankan paket yang sama dan mengambil kode pengembalian:
DECLARE @returncode int
EXEC @returncode = xp_cmdshell 'dtexec /f "C:\UpsertData.dtsx"'
Penting
Di Microsoft SQL Server, opsi xp_cmdshell dinonaktifkan secara default pada penginstalan baru. Opsi dapat diaktifkan dengan menjalankan prosedur tersimpan sistem sp_configure. Untuk informasi selengkapnya, lihat Opsi Konfigurasi Server xp_cmdshell.
Menggunakan dtexec dari Bash
Shell Bash adalah shell populer untuk Linux. Ini juga dapat digunakan pada Windows. Anda dapat menjalankan dtexec dari prompt Bash. Perhatikan bahwa titik koma (;
) adalah operator pembatas perintah di Bash. Ini sangat penting saat meneruskan nilai ke paket menggunakan /Conn[ection]
opsi atau /Par[arameter]
'/Set
karena mereka menggunakan titik koma untuk memisahkan nama dan nilai item yang disediakan. Contoh berikut menunjukkan cara melepaskan titik koma dan item lainnya dengan benar saat menggunakan Bash dan meneruskan nilai ke paket:
dtexec /F MyPackage.dtsx /CONN "MyConnection"\;"\"MyConnectionString\""
Sintaks
dtexec /option [value] [/option [value]]...
Parameter
/? [option_name]: (Opsional). Menampilkan opsi perintah, atau menampilkan bantuan untuk option_name yang ditentukan lalu menutup utilitas.
Jika Anda menentukan argumen option_name , dtexec memulai SQL Server Books Online dan menampilkan topik Utilitas dtexec.
/Ca[llerInfo]: (Opsional). Menentukan informasi tambahan untuk eksekusi paket. Saat Anda menjalankan paket menggunakan SQL Server Agent, agen mengatur argumen ini untuk menunjukkan bahwa eksekusi paket dipanggil oleh SQL Server Agent. Parameter ini diabaikan ketika utilitas dtexec dijalankan dari baris perintah.
Filespec /CheckF[ile]: (Opsional). Mengatur properti CheckpointFileName pada paket ke jalur dan file yang di-spemandcified dalam filespec. File ini digunakan ketika paket dimulai ulang. Jika opsi ini ditentukan dan tidak ada nilai yang disediakan untuk nama file, CheckpointFileName untuk paket diatur ke string kosong. Jika opsi ini tidak ditentukan, nilai dalam paket akan dipertahankan.
/CheckP[ointing] {on\off} : (Opsional). Menetapkan nilai yang menentukan apakah paket akan menggunakan titik pemeriksaan selama eksekusi paket. Nilai pada menentukan bahwa paket yang gagal akan dijalankan ulang. Ketika paket yang gagal dijalankan ulang, mesin run-time menggunakan file titik pemeriksaan untuk memulai ulang paket dari titik kegagalan.
Nilai default aktif jika opsi dinyatakan tanpa nilai. Eksekusi paket akan gagal jika nilai diatur ke aktif dan file titik pemeriksaan tidak dapat ditemukan. Jika opsi ini tidak ditentukan, nilai yang ditetapkan dalam paket dipertahankan. Untuk informasi selengkapnya, lihat Memulai Ulang Paket dengan Menggunakan Titik Pemeriksaan.
Opsi /CheckPointing pada dtexec setara dengan mengatur properti SaveCheckpoints paket ke True, dan properti CheckpointUsage ke Always.
/Com[mandFile] filespec: (Opsional). Menentukan opsi perintah yang berjalan dengan dtexec. File yang ditentukan dalam filespec dibuka dan opsi dari file dibaca hingga EOF ditemukan dalam file. filespec adalah file teks. Argumen filespec menentukan nama file dan jalur file perintah untuk dikaitkan dengan eksekusi paket.
/Conf[igFile] filespec: (Opsional). Menentukan file konfigurasi untuk mengekstrak nilai. Dengan menggunakan opsi ini, Anda dapat mengatur konfigurasi run-time yang berbeda dari konfigurasi yang ditentukan pada waktu desain untuk paket. Anda dapat menyimpan pengaturan konfigurasi yang berbeda dalam file konfigurasi XML lalu memuat pengaturan sebelum eksekusi paket dengan menggunakan opsi /ConfigFile .
Anda dapat menggunakan opsi /ConfigFile untuk memuat konfigurasi tambahan pada waktu proses yang tidak Anda tentukan pada waktu desain. Namun, Anda tidak dapat menggunakan opsi /ConfigFile untuk menggantikan nilai yang dikonfigurasi yang juga Anda tentukan pada waktu desain. Untuk memahami bagaimana konfigurasi paket diterapkan, lihat Konfigurasi Paket.
/Conn[ection] id_or_name; connection_string [[; id_or_name; connection_string]...]: (Opsional). Menentukan bahwa manajer koneksi dengan nama atau GUID yang ditentukan terletak di paket, dan menentukan string koneksi.
Opsi ini mengharuskan kedua parameter ditentukan: nama manajer koneksi atau GUID harus disediakan dalam argumen id_or_name, dan string koneksi yang valid harus ditentukan dalam argumen connection_string. Untuk informasi selengkapnya, lihat Koneksi Integration Services (SSIS).
Pada waktu proses, Anda dapat menggunakan opsi /Koneksi untuk memuat konfigurasi paket dari lokasi selain lokasi yang Anda tentukan pada waktu desain. Nilai konfigurasi ini kemudian menggantikan nilai yang awalnya ditentukan. Namun Anda dapat menggunakan opsi /Connection hanya untuk konfigurasi, seperti konfigurasi SQL Server, yang menggunakan pengelola koneksi. Untuk memahami bagaimana konfigurasi paket diterapkan, lihat Konfigurasi Paket dan Perubahan Perilaku pada Fitur Layanan Integrasi di SQL Server 2016.
/Cons[oleLog] [[displayoptions];[list_options;src_name_or_guid]...]: (Opsional). Menampilkan entri log yang ditentukan ke konsol selama eksekusi paket. Jika opsi ini dihilangkan, tidak ada entri log yang ditampilkan di konsol. Jika opsi ditentukan tanpa parameter yang membatasi tampilan, setiap entri log akan ditampilkan. Untuk membatasi entri yang ditampilkan ke konsol, Anda dapat menentukan kolom yang akan ditampilkan dengan menggunakan parameter displayoptions , dan membatasi jenis entri log dengan menggunakan parameter list_options .
Catatan
Saat Anda menjalankan paket di server Integration Services dengan menggunakan parameter /ISSERVER , output konsol dibatasi dan sebagian besar opsi /Cons[oleLog] tidak berlaku. Semua log eksekusi dapat dilihat dari server dalam tampilan terkait atau dengan menggunakan laporan standar yang tersedia di SQL Server Management Studio. Untuk informasi selengkapnya tentang laporan, lihat Laporan untuk Server Layanan Integrasi.
Nilai displayoptions adalah sebagai berikut:
N (Nama)
C (Komputer)
O (Operator)
S (Nama Sumber)
G (GUID Sumber)
X (GUID Eksekusi)
M (Pesan)
T (Time Start and End)
Nilai list_options adalah sebagai berikut:
I - Menentukan daftar penyertaan. Hanya nama sumber atau GUID yang ditentukan yang dicatat.
E - Menentukan daftar pengecualian. Nama sumber atau GUID yang ditentukan tidak dicatat.
Parameter src_name_or_guid yang ditentukan untuk dimasukkan atau dikecualikan adalah nama peristiwa, nama sumber, atau GUID sumber.
Jika Anda menggunakan beberapa opsi /ConsoleLog pada prompt perintah yang sama, opsi tersebut berinteraksi sebagai berikut:
Urutan penampilan mereka tidak berpengaruh.
Jika tidak ada daftar inklusi yang ada di baris perintah, daftar pengecualian diterapkan terhadap semua jenis entri log.
Jika ada daftar inklusi yang ada di baris perintah, daftar pengecualian diterapkan terhadap persatuan semua daftar inklusi.
Untuk beberapa contoh opsi /ConsoleLog , lihat bagian Komentar .
/D[ts] package_path: (Opsional). Memuat paket dari Penyimpanan Paket SSIS. Paket yang disimpan di Penyimpanan Paket SSIS, disebarkan menggunakan model penyebaran paket warisan. Untuk menjalankan paket yang disebarkan ke server Layanan Integrasi menggunakan model penyebaran proyek, gunakan opsi /ISServer . Untuk informasi selengkapnya tentang model penyebaran paket dan proyek, lihat Penyebaran Proyek dan Paket.
Argumen package_path menentukan jalur relatif paket SSIS, dimulai dari akar Penyimpanan Paket SSIS, dan menyertakan nama paket SSIS. Jika jalur atau nama file yang ditentukan dalam argumen package_path berisi spasi, Anda harus meletakkan tanda kutip di sekitar argumen package_path .
Opsi /DTS tidak dapat digunakan bersama dengan opsi /File atau /SQL . Jika beberapa opsi ditentukan, dtexec gagal.
/De[crypt] password: (Opsional). Mengatur kata sandi dekripsi yang digunakan saat Anda memuat paket dengan enkripsi kata sandi.
(Opsional) Membuat file cadangan debug, .mdmp dan .tmp, ketika satu atau beberapa peristiwa yang ditentukan terjadi saat paket sedang berjalan. Argumen kode kesalahan menentukan jenis kesalahan kode peristiwa, peringatan, atau informasi-yang akan memicu sistem untuk membuat file cadangan debug. Untuk menentukan beberapa kode peristiwa, pisahkan setiap argumen kode kesalahan dengan titik koma (;). Jangan sertakan tanda kutip dengan argumen kode kesalahan.
Contoh berikut menghasilkan file cadangan debug saat kesalahan DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER terjadi.
/Dump 0xC020801C
Kode kesalahan /Dump: Secara default, Integration Services menyimpan file cadangan debug di folder,< drive>:\Program Files\Microsoft SQL Server\110\Shared\ErrorDumps.
Catatan
File cadangan debug mungkin berisi informasi sensitif. Gunakan daftar kontrol akses (ACL) untuk membatasi akses ke file, atau salin file ke folder dengan akses terbatas. Misalnya, sebelum Anda mengirim file debug ke layanan dukungan Microsoft, kami sarankan Anda menghapus informasi sensitif atau rahasia apa pun.
Untuk menerapkan opsi ini ke semua paket yang dijalankan utilitas dtexec , tambahkan nilai REG_SZ DumpOnCodes ke kunci registri HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\110\SSIS\Setup\DtsPath. Nilai data di DumpOnCodes menentukan kode kesalahan atau kode yang akan memicu sistem untuk membuat file cadangan debug. Beberapa kode kesalahan harus dipisahkan oleh titik koma (;).
Jika Anda menambahkan nilai DumpOnCodes ke kunci registri, dan menggunakan opsi /Dump , sistem akan membuat file cadangan debug yang didasarkan pada kedua pengaturan.
Untuk informasi selengkapnya tentang file cadangan debug, lihat Membuat File Cadangan untuk Eksekusi Paket.
/DumpOnError: (Opsional) Membuat file dump debug, .mdmp dan .tmp, ketika terjadi kesalahan saat paket sedang berjalan.
Secara default, Integration Services menyimpan file cadangan debug di folder, <drive>:\Program Files\Microsoft SQL Server\110\Shared\ErrorDumps folder.
Catatan
File cadangan debug mungkin berisi informasi sensitif. Gunakan daftar kontrol akses (ACL) untuk membatasi akses ke file, atau salin file ke folder dengan akses terbatas. Misalnya, sebelum Anda mengirim file debug ke layanan dukungan Microsoft, kami sarankan Anda menghapus informasi sensitif atau rahasia apa pun.
Untuk menerapkan opsi ini ke semua paket yang dijalankan utilitas dtexec , tambahkan nilai REG_DWORD DumpOnError ke kunci registri HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\110\SSIS\Setup\DtsPath. Nilai dumpOnError REG_DWORD menentukan apakah opsi /DumpOnError perlu digunakan dengan utilitas dtexec :
Nilai data bukan nol menunjukkan bahwa sistem akan membuat file cadangan debug ketika terjadi kesalahan, terlepas dari apakah Anda menggunakan opsi /DumpOnError dengan utilitas dtexec .
Nilai data nol menunjukkan bahwa sistem tidak akan membuat file cadangan debug kecuali Anda menggunakan opsi /DumpOnError dengan utilitas dtexec .
Untuk informasi selengkapnya tentang file cadangan debug, lihat Membuat File Cadangan untuk Eksekusi Paket
ID referensi lingkungan /Env[Reference]: (Opsional). Menentukan referensi lingkungan (ID) yang digunakan oleh eksekusi paket, untuk paket yang disebarkan ke server Layanan Integrasi. Parameter yang dikonfigurasi untuk mengikat variabel akan menggunakan nilai variabel yang terkandung dalam lingkungan.
Anda menggunakan opsi /Env[Reference] bersama dengan opsi /ISServer dan /Server .
Parameter ini digunakan oleh SQL Server Agent.
-- /F[ile] filespec: (Opsional). Memuat paket yang disimpan dalam sistem file. Paket yang disimpan dalam sistem file, disebarkan menggunakan model penyebaran paket warisan. Untuk menjalankan paket yang disebarkan ke server Layanan Integrasi menggunakan model penyebaran proyek, gunakan opsi /ISServer . Untuk informasi selengkapnya tentang model penyebaran paket dan proyek, lihat Penyebaran Proyek dan Paket
Argumen filespec menentukan jalur dan nama file paket. Anda dapat menentukan jalur sebagai jalur Universal Naming Convention (UNC) atau jalur lokal. Jika jalur atau nama file yang ditentukan dalam argumen filespec berisi spasi, Anda harus menempatkan tanda kutip di sekitar argumen filespec .
Opsi /File tidak dapat digunakan bersama dengan opsi /DTS atau /SQL . Jika beberapa opsi ditentukan, dtexec gagal.
/H[elp] [option_name]: (Opsional). Menampilkan bantuan untuk opsi, atau menampilkan bantuan untuk option_name yang ditentukan dan menutup utilitas.
Jika Anda menentukan argumen option_name , dtexec memulai SQL Server Books Online dan menampilkan topik Utilitas dtexec.
/ISServer packagepath: (Opsional). Menjalankan paket yang disebarkan ke server Integration Services. Argumen PackagePath menentukan jalur lengkap dan nama file paket yang disebarkan ke server Integration Services. Jika jalur atau nama file yang ditentukan dalam argumen PackagePath berisi spasi, Anda harus menempatkan tanda kutip di sekitar argumen PackagePath .
Format paketnya adalah sebagai berikut:
\<catalog name>\<folder name>\<project name>\package file name
Anda menggunakan opsi /Server bersama dengan opsi /ISSERVER . Hanya Autentikasi Windows yang dapat menjalankan paket pada Server SSIS. Pengguna Windows saat ini digunakan untuk mengakses paket. Jika opsi /Server dihilangkan, instans lokal default SQL Server diasumsikan.
Opsi /ISSERVER tidak dapat digunakan bersama dengan opsi /DTS, /SQL atau /File . Jika beberapa opsi ditentukan, dtexec gagal.
Parameter ini digunakan oleh SQL Server Agent.
/L[ogger] classid_orprogid; configstring: (Opsional). Mengaitkan satu atau beberapa penyedia log dengan eksekusi paket SSIS. Parameter classid_orprogid menentukan penyedia log, dan dapat ditentukan sebagai GUID kelas. Konfigurasi adalah string yang digunakan untuk mengonfigurasi penyedia log.
Daftar berikut ini memperlihatkan penyedia log yang tersedia:
File teks:
ProgID: DTS. LogProviderTextFile.1
ClassID: {59B2C6A5-663F-4C20-8863-C83F9B72E2EB}
Profiler SQL Server:
ProgID: DTS. LogProviderSQLProfiler.1
ClassID: {5C0B8D21-E9AA-462E-BA34-30FF5F7A42A1}
SQL Server:
ProgID: DTS. LogProviderSQLServer.1
ClassID: {6AA833A1-E4B2-4431-831B-DE695049DC61}
Log Peristiwa Windows:
ProgID: DTS. LogProviderEventLog.1
ClassID: {97634F75-1DC7-4F1F-8A4C-DAF0E13AAA22}
File XML:
ProgID: DTS. LogProviderXMLFile.1
ClassID: {AFED6884-619C-484F-9A09-F42D56E1A7EA}
/M[axConcurrent] concurrent_executables: (Opsional). Menentukan jumlah file yang dapat dieksekusi yang dapat dijalankan paket secara bersamaan. Nilai yang ditentukan harus berupa bilangan bulat non-negatif, atau -1. Nilai -1 berarti bahwa SSIS akan memungkinkan jumlah maksimum yang menjalankan executable secara bersamaan yang sama dengan jumlah total prosesor pada komputer yang menjalankan paket, ditambah dua.
/Pack[age] PackageName: (Opsional). Menentukan paket yang dijalankan. Parameter ini digunakan terutama saat Anda menjalankan paket dari Visual Studio.
Kata sandi /P[assword]: (Opsional). Memungkinkan pengambilan paket yang dilindungi oleh Autentikasi SQL Server. Opsi ini digunakan bersama dengan opsi /User . Jika opsi /Password dihilangkan dan opsi /User digunakan, kata sandi kosong digunakan. Nilai kata sandi dapat dikutip.
Penting
Jika memungkinkan, gunakan autentikasi Windows.
/Par[ameter] [$Package:: | $Project:: | $ServerOption::] parameter_name [(data_type)]; literal_value: (Opsional). Menentukan nilai parameter. Beberapa opsi /Parameter dapat ditentukan. Jenis datanya adalah CLR TypeCodes sebagai string. Untuk parameter non-string, jenis data ditentukan dalam tanda kurung, mengikuti nama parameter.
Opsi /Parameter hanya dapat digunakan dengan opsi /ISServer .
Anda menggunakan awalan $Package, $Project, dan $ServerOption untuk menunjukkan parameter paket, parameter proyek, dan parameter opsi server. Jenis parameter default adalah paket.
Berikut ini adalah contoh menjalankan paket dan menyediakan myvalue untuk parameter proyek (myparam) dan nilai bilangan bulat 12 untuk parameter paket (anotherparam).
Dtexec /isserver "SSISDB\MyFolder\MyProject\MyPackage.dtsx" /server "." /parameter $Project::myparam;myvalue /parameter anotherparam(int32);12
Anda juga dapat mengatur properti pengelola koneksi dengan menggunakan parameter. Anda menggunakan awalan CM untuk menunjukkan parameter pengelola koneksi.
Dalam contoh berikut, properti InitialCatalog dari manajer koneksi SourceServer diatur ke
ssisdb
./parameter CM.SourceServer.InitialCatalog;ssisdb
Dalam contoh berikut, properti ServerName manajer koneksi SourceServer diatur ke titik (.) untuk menunjukkan server lokal.
/parameter CM.SourceServer.ServerName;.
/Proj[ect] ProjectFile: (Opsional). Menentukan proyek tempat untuk mengambil paket yang dijalankan. Argumen ProjectFile menentukan nama file .ispac. Parameter ini digunakan terutama saat Anda menjalankan paket dari Visual Studio.
/Rem comment: (Opsional). Menyertakan komentar pada prompt perintah atau dalam file perintah. Argumen bersifat opsional. Nilai komentar adalah string yang harus diapit dalam tanda kutip, atau tidak berisi spasi kosong. Jika tidak ada argumen yang ditentukan, baris kosong akan disisipkan. nilai komentar dibuang selama fase sumber perintah.
Tingkat /Rep[orting] [; event_guid_or_name[; event_guid_or_name[...]]] : (Opsional). Menentukan jenis pesan apa yang akan dilaporkan. Opsi pelaporan yang tersedia untuk tingkat adalah sebagai berikut:
N Tidak ada pelaporan.
Kesalahan E dilaporkan.
Peringatan W dilaporkan.
Saya Pesan informasi dilaporkan.
Peristiwa Kustom C dilaporkan.
Peristiwa tugas Aliran Data D dilaporkan.
Kemajuan P dilaporkan.
Pelaporan V Verbose.
Argumen V dan N saling eksklusif untuk semua argumen lainnya; mereka harus ditentukan sendiri. Jika opsi /Reporting tidak ditentukan, maka tingkat defaultnya adalah E (kesalahan), W (peringatan), dan P (kemajuan).
Semua peristiwa didahului dengan tanda waktu dalam format "YY/MM/DD HH:MM:SS", dan GUID atau nama yang ramah jika tersedia.
Parameter opsional event_guid_or_name adalah daftar pengecualian untuk penyedia log. Pengecualian menentukan peristiwa yang tidak dicatat bahwa jika tidak, mungkin telah dicatat.
Anda tidak perlu mengecualikan peristiwa jika peristiwa tidak biasanya dicatat secara default
/Res[tart] {deny | force | ifPossible}: (Opsional). Menentukan nilai baru untuk CheckpointUsage properti pada paket. Arti parameter adalah sebagai berikut:
Tolak Set CheckpointUsage properti ke DTSCU_NEVER.
Properti Force Sets CheckpointUsage ke DTSCU_ALWAYS.
properti ifPossible Sets CheckpointUsage ke DTSCU_IFEXISTS.
Nilai default gaya digunakan jika tidak ada nilai yang ditentukan.
/Set [$Sensitive::]propertyPath; value: (Opsional). Mengambil alih konfigurasi parameter, variabel, properti, kontainer, penyedia log, enumerator Foreach, atau koneksi dalam paket. Ketika opsi ini digunakan, /Atur mengubah argumen propertyPath ke nilai yang ditentukan. Beberapa opsi /Set dapat ditentukan.
Selain menggunakan opsi /Set dengan opsi /F[ile] , Anda juga dapat menggunakan opsi /Set dengan opsi /ISServer atau opsi /Project . Saat Anda menggunakan /Set dengan /Project, /Atur nilai parameter set. Saat Anda menggunakan /Set dengan /ISServer, /Set mengatur penimpaan properti. Selain itu, ketika Anda menggunakan /Set dengan /ISServer, Anda dapat menggunakan prefiks $Sensitive opsional untuk menunjukkan bahwa properti harus diperlakukan sensitif di server Integration Services.
Anda dapat menentukan nilai propertyPath dengan menjalankan Panduan Konfigurasi Paket. Jalur untuk item yang Anda pilih ditampilkan pada halaman Menyelesaikan Wizard akhir, dan dapat disalin dan ditempelkan. Jika Anda telah menggunakan wisaya hanya untuk tujuan ini, Anda bisa membatalkan wisaya setelah menyalin jalur.
Berikut ini adalah contoh menjalankan paket yang disimpan dalam sistem file dan memberikan nilai baru untuk variabel:
dtexec /f mypackage.dtsx /set \package.variables[myvariable].Value;myvalue
Contoh berikut menjalankan paket dari file proyek .ispac dan mengatur parameter paket dan proyek.
/Project c:\project.ispac /Package Package1.dtsx /SET \Package.Variables[$Package::Parameter];1 /SET \Package.Variables[$Project::Parameter];1
Anda dapat menggunakan opsi /Set untuk mengubah lokasi tempat konfigurasi paket dimuat. Namun, Anda tidak dapat menggunakan opsi /Set untuk mengambil alih nilai yang ditentukan oleh konfigurasi pada waktu desain. Untuk memahami bagaimana konfigurasi paket diterapkan, lihat Konfigurasi Paket dan Perubahan Perilaku pada Fitur Layanan Integrasi di SQL Server 2016.
Server /Ser[ver]: (Opsional). Ketika opsi /SQL atau /DTS ditentukan, opsi ini menentukan nama server untuk mengambil paket. Jika Anda menghilangkan opsi /Server dan opsi /SQL atau /DTS ditentukan, eksekusi paket dicoba terhadap server lokal. Nilai server_instance dapat dikutip.
Opsi /Ser[ver] diperlukan saat opsi /ISServer ditentukan.
/SQ[L] package_path: Memuat paket yang disimpan di SQL Server, dalam database msdb . Paket yang disimpan dalam database msdb , disebarkan menggunakan model penyebaran paket. Untuk menjalankan paket yang disebarkan ke server Layanan Integrasi menggunakan model penyebaran proyek, gunakan opsi /ISServer . Untuk informasi selengkapnya tentang model penyebaran paket dan proyek, lihat Penyebaran Proyek dan Paket.
Argumen package_path menentukan nama paket yang akan diambil. Jika folder disertakan dalam jalur, folder akan dihentikan dengan garis miring terbelakang ("\"). Nilai package_path dapat dikutip. Jika jalur atau nama file yang ditentukan dalam argumen package_path berisi spasi, Anda harus meletakkan tanda kutip di sekitar argumen package_path .
Anda dapat menggunakan opsi /User, /Password, dan /Server bersama dengan opsi /SQL .
Jika Anda menghilangkan opsi /Pengguna , Autentikasi Windows digunakan untuk mengakses paket. Jika Anda menggunakan opsi /Pengguna , nama masuk /Pengguna yang ditentukan dikaitkan dengan Autentikasi SQL Server.
Opsi /Password hanya digunakan bersama dengan opsi /User . Jika Anda menggunakan opsi /Password , paket diakses dengan nama pengguna dan informasi kata sandi yang disediakan. Jika Anda menghilangkan opsi /Password , kata sandi kosong akan digunakan.
Penting
Jika memungkinkan, gunakan autentikasi Windows.
Jika opsi /Server dihilangkan, instans lokal default SQL Server diasumsikan.
Opsi /SQL tidak dapat digunakan bersama dengan opsi /DTS atau /File . Jika beberapa opsi ditentukan, dtexec gagal.
/Su[m]: (Opsional). Menampilkan penghitung bertambah bertahas yang berisi jumlah baris yang akan diterima oleh komponen berikutnya.
/U[ser] user_name: (Opsional). Memungkinkan pengambilan paket yang dilindungi oleh Autentikasi SQL Server. Opsi ini hanya digunakan ketika opsi /SQL ditentukan. Nilai user_name dapat dikutip.
Penting
Jika memungkinkan, gunakan autentikasi Windows.
/Va[lidate]: (Opsional). Menghentikan eksekusi paket setelah fase validasi, tanpa benar-benar menjalankan paket. Selama validasi, penggunaan opsi /WarnAsError menyebabkan dtexec memperlakukan peringatan sebagai kesalahan; oleh karena itu paket gagal jika peringatan terjadi selama validasi.
/VerifyB[uild] major[; minor[; build]]: (Opsional). Memverifikasi nomor build paket terhadap nomor build yang ditentukan selama fase verifikasi di argumen utama, minor, dan build . Jika terjadi ketidakcocokan, paket tidak akan dijalankan.
Nilainya adalah bilangan bulat panjang. Argumen dapat memiliki salah satu dari tiga formulir, dengan nilai untuk mayor selalu diperlukan:
mayor
utama;Kecil
utama; minor; membangun
/VerifyP[ackageID] packageID: (Opsional). Memverifikasi GUID paket yang akan dijalankan dengan membandingkannya dengan nilai yang ditentukan dalam argumen package_id .
/Verifys[igned]: (Opsional). Menyebabkan Integration Services memeriksa tanda tangan digital paket. Jika paket tidak ditandatangani atau tanda tangan tidak valid, paket gagal. Untuk informasi selengkapnya, lihat Mengidentifikasi Sumber Paket dengan Tanda Tangan Digital.
Penting
Ketika dikonfigurasi untuk memeriksa tanda tangan paket, Integration Services hanya memeriksa apakah tanda tangan digital ada, valid, dan berasal dari sumber tepercaya. Layanan Integrasi tidak memeriksa apakah paket telah diubah.
Catatan
Nilai registri BlockedSignatureStates opsional dapat menentukan pengaturan yang lebih ketat daripada opsi tanda tangan digital yang diatur di SQL Server Data Tools (SSDT) atau di baris perintah dtexec. Dalam situasi ini, pengaturan registri yang lebih ketat mengambil alih pengaturan lain.
/VerifyV[ersionID] versionID: (Opsional). Memverifikasi GUID versi paket yang akan dijalankan dengan membandingkannya dengan nilai yang ditentukan dalam argumen version_id selama Fase Validasi paket.
/VLog [Filespec]: (Opsional). Menulis semua peristiwa paket Layanan Integrasi ke penyedia log yang diaktifkan saat paket dirancang. Agar Integration Services mengaktifkan penyedia log untuk file teks dan menulis peristiwa log ke file teks tertentu, sertakan jalur dan nama file sebagai parameter Filespec .
Jika Anda tidak menyertakan parameter Filespec , Integration Services tidak akan mengaktifkan penyedia log untuk file teks. Integration Services hanya akan menulis peristiwa log ke penyedia log yang diaktifkan saat paket dirancang.
/W[arnAsError]: (Opsional). Menyebabkan paket mempertimbangkan peringatan sebagai kesalahan; oleh karena itu, paket akan gagal jika peringatan terjadi selama validasi. Jika tidak ada peringatan yang terjadi selama validasi dan opsi /Validasi tidak ditentukan, paket dijalankan.
/X86: (Opsional). Menyebabkan SQL Server Agent menjalankan paket dalam mode 32-bit pada komputer 64-bit. Opsi ini diatur oleh SQL Server Agent ketika kondisi berikut ini benar:
Jenis langkah pekerjaan adalah paket SQL Server Integration Services.
Opsi Gunakan runtime 32 bit pada tab Opsi eksekusi dari kotak dialog Langkah Pekerjaan Baru dipilih.
Anda juga dapat mengatur opsi ini untuk langkah pekerjaan SQL Server Agent dengan menggunakan prosedur tersimpan atau SQL Server Management Objects (SMO) untuk membuat pekerjaan secara terprogram.
Opsi ini hanya digunakan oleh SQL Server Agent. Opsi ini diabaikan jika Anda menjalankan utilitas dtexec pada prompt perintah.
Keterangan
Urutan di mana Anda menentukan opsi perintah dapat memengaruhi cara paket dijalankan:
Opsi diproses dalam urutan yang ditemui pada baris perintah. File perintah dibaca saat ditemui di baris perintah. Perintah dalam file perintah juga diproses dalam urutan yang ditemui.
Jika opsi, parameter, atau variabel yang sama muncul dalam pernyataan baris perintah yang sama lebih dari satu kali, instans terakhir opsi lebih diutamakan.
Opsi /Set dan /ConfigFile diproses dalam urutan yang ditemui.
Contoh
Contoh berikut menunjukkan cara menggunakan utilitas prompt perintah dtexec untuk mengonfigurasi dan menjalankan paket SQL Server Integration Services.
Menjalankan Paket
Untuk menjalankan paket SSIS yang disimpan ke SQL Server menggunakan Autentikasi Windows, gunakan kode berikut:
dtexec /sq pkgOne /ser productionServer
Untuk menjalankan paket SSIS yang disimpan ke folder Sistem File di Penyimpanan Paket SSIS, gunakan kode berikut:
dtexec /dts "\File System\MyPackage"
Untuk memvalidasi paket yang menggunakan Autentikasi Windows dan disimpan di SQL Server tanpa menjalankan paket, gunakan kode berikut:
dtexec /sq pkgOne /ser productionServer /va
Untuk menjalankan paket SSIS yang disimpan dalam sistem file, gunakan kode berikut:
dtexec /f "c:\pkgOne.dtsx"
Untuk menjalankan paket SSIS yang disimpan dalam sistem file, dan tentukan opsi pengelogan, gunakan kode berikut:
dtexec /f "c:\pkgOne.dtsx" /l "DTS.LogProviderTextFile;c:\log.txt"
Untuk menjalankan paket yang menggunakan Autentikasi Windows dan disimpan ke instans lokal default SQL Server, dan verifikasi versi sebelum dijalankan, gunakan kode berikut:
dtexec /sq pkgOne /verifyv {c200e360-38c5-11c5-11ce-ae62-08002b2b79ef}
Untuk menjalankan paket SSIS yang disimpan dalam sistem file dan dikonfigurasi secara eksternal, gunakan kode berikut:
dtexec /f "c:\pkgOne.dtsx" /conf "c:\pkgOneConfig.cfg"
Catatan
Argumen package_path atau filespec dari opsi /SQL, /DTS, atau /FILE harus diapit dalam tanda kutip jika jalur atau nama file berisi spasi. Jika argumen tidak diapit dalam tanda kutip, argumen tidak boleh berisi spasi kosong.
Opsi Pengelogan
Jika ada tiga jenis entri log A, B, dan C, opsi ConsoleLog berikut tanpa parameter menampilkan ketiga jenis log dengan semua bidang:
/CONSOLELOG
Opsi berikut menampilkan semua jenis log, tetapi hanya dengan kolom Nama dan Pesan:
/CONSOLELOG NM
Opsi berikut menampilkan semua kolom, tetapi hanya untuk entri log tipe A:
/CONSOLELOG I;LogEntryTypeA
Opsi berikut hanya menampilkan entri log tipe A, dengan kolom Nama dan Pesan:
/CONSOLELOG NM;I;LogEntryTypeA
Opsi berikut menampilkan entri log untuk jenis entri log A dan B:
/CONSOLELOG I;LogEntryTypeA;LogEntryTypeB
Anda dapat mencapai hasil yang sama dengan menggunakan beberapa opsi ConsoleLog :
/CONSOLELOG I;LogEntryTypeA /CONSOLELOG I;LogEntryTypeB
Jika opsi ConsoleLog digunakan tanpa parameter, semua bidang ditampilkan. Penyertaan parameter list_options menyebabkan hal berikut hanya menampilkan entri log tipe A, dengan semua bidang:
/CONSOLELOG NM;I;LogEntryTypeA /CONSOLELOG
Berikut ini menampilkan semua entri log kecuali entri log tipe A: yaitu, menampilkan jenis entri log B dan C:
/CONSOLELOG E;LogEntryTypeA
Contoh berikut mencapai hasil yang sama dengan menggunakan beberapa opsi ConsoleLog dan satu pengecualian:
/CONSOLELOG E;LogEntryTypeA /CONSOLELOG
/CONSOLELOG E;LogEntryTypeA /CONSOLELOG E;LogEntryTypeA
/CONSOLELOG E;LogEntryTypeA;LogEntryTypeA
Contoh berikut tidak menampilkan pesan log, karena ketika jenis file log ditemukan dalam daftar yang disertakan dan dikecualikan, itu akan dikecualikan.
/CONSOLELOG E;LogEntryTypeA /CONSOLELOG I;LogEntryTypeA
Opsi SET
Contoh berikut menunjukkan cara menggunakan opsi /SET , yang memungkinkan Anda mengubah nilai properti paket atau variabel apa pun saat Anda memulai paket dari baris perintah.
/SET \package\DataFlowTask.Variables[User::MyVariable].Value;newValue
Opsi Proyek
Contoh berikut menunjukkan cara menggunakan /Project dan opsi /Package .
/Project c:\project.ispac /Package Package1.dtsx
Contoh berikut menunjukkan cara menggunakan opsi /Project dan /Package , dan mengatur parameter paket dan proyek.
/Project c:\project.ispac /Package Package1.dtsx /SET \Package.Variables[$Package::Parameter];1 /SET \Package.Variables[$Project::Parameter];1
Opsi ISServer
Contoh berikut menunjukkan cara menggunakan opsi /ISServer .
dtexec /isserver "\SSISDB\MyFolder\MyProject\MyPackage.dtsx" /server "."
Contoh berikut menunjukkan cara menggunakan opsi /ISServer dan mengatur parameter manajer proyek dan koneksi.
/Server localhost /ISServer "\SSISDB\MyFolder\Integration Services Project1\Package.dtsx" /Par "$Project::ProjectParameter(Int32)";1 /Par "CM.SourceServer.InitialCatalog";SourceDB