Saat mengerjakan salah satu proyek saya, saya menemukan skenario di mana saya memiliki database klien yang disediakan oleh beberapa penyedia lain melalui aplikasi mereka. Saya harus mendapatkan data dari database itu, dan menggunakan data itu saya harus melakukan beberapa perhitungan dan menyimpan hasilnya di database saya. Ada dua skenario dalam kasus ini
- Saya dapat mengambil semua tabel dan data yang diperlukan dari database itu dan membuat database saya sendiri dan memasukkan detail tersebut ke dalam database saya dan kemudian menggunakannya
- Saya dapat membuat tautan antara database saya dan database yang sudah ada, sehingga saya dapat mengaktifkan kueri langsung di database tersebut
Menggunakan pendekatan pertama tidak akan memberi saya catatan yang diperbarui kapan pun tetapi skenario saya adalah data waktu nyata. Jadi saya berpikir untuk menggunakan pendekatan kedua. Pendekatan ini memberi saya data waktu nyata saat saya menanyakan data yang ada dan menggunakannya. Tapi ada satu kelemahan. Mungkin agak lambat. Pada artikel ini saya akan menjelaskan cara membuat linked server di SQL Server. Di sini saya akan menggunakan Driver ODBC untuk mengambil data dari database MYSQL
Berikut ini adalah langkah-langkah untuk menghubungkan database MySQL ke SQL ServerPertama-tama kita perlu menginstal Driver ODBC MySQL yang sesuai berdasarkan sistem operasi dari tautan di bawah ini. Setelah driver diinstal, buka Panel Kontrol, Alat Administratif, lalu Sumber Data (ODBC). Setelah itu klik Sistem DSN. Sekarang Tekan Tombol Tambah
Pilih MYSQL Driver Listed(MYSQL(ODBC) 5. 3 Driver ANSI) dan klik selesai. Ini akan membuka jendela Konfigurasi MySQL
Isi Nama Sumber Data sebagai MYSQL (ini bisa apa saja). Server TCP/IP sebagai host lokal. Port sebagai 3306 (port default untuk mysql), Nama Pengguna-root, Kata Sandi - kata sandi basis data Anda dan klik uji. Ini akan menampilkan pesan sukses. Sekarang pilih database dan klik ok
BUAT PENGGUNA lalu MEMBERIKAN kemampuan SELECT untuk semua tabel* dalam database 'susu'. Langkah SQL pertama di sini bagi saya adalah membuat database & tabel pengujian
-- Create test database & table CREATE DATABASE milk; USE milk; CREATE TABLE animal (id INT, type VARCHAR(50), breed VARCHAR(50), age DATE); INSERT INTO animal (1,'cow','white with black spots','2009-10-06'); INSERT INTO animal VALUES (2,'cow','black with white spots','2011-12-16'); -- Create Linked Server user CREATE USER 'linked_server_sql1'@'172.31.1.%' IDENTIFIED BY 'eCh0Ch4rl1E'; GRANT SELECT ON milk.* TO 'linked_server_sql1'@'172.31.1.%';Koneksi saya berada dalam 172. 31. 1. 0 jaringan, jadi saya menambahkan wildcard (%) untuk semua alamat pada rentang ini untuk diizinkan terhubung dengan login ini.
Jika saya ingin menguji login MySQL baru ini secara lokal, saya juga dapat membuat pengguna menggunakan 'localhost'. Di bawah ini saya membuka mysql. exe daripada menggunakan aplikasi MySQL Command Line Client yang masuk sebagai root
Kenakan topi Pengguna dan lakukan apa yang perlu Anda lakukan
Saya hanya menginginkan akses baca-saja, yang dapat saya konfirmasikan dengan tes tulis cepat
Itu login MySQL Server Tertaut kami sudah siap
Hal di atas juga dapat dilakukan dengan alat seperti MySQL WorkBench juga; . Akun pengguna baru di bawah ini akan dapat terhubung dari alamat host mana pun
Konfigurasikan Pengaturan Sumber Data ODBC
Unduhan driver MySQL ODBC dapat ditemukan di sini. Unduh & instal di mesin host SQL Server
Catatan; . 0. 20. Saya harus menginstal versi 8. 0. 18 karena 2 versi terbaru menampilkan pesan kesalahan saat menginstal
Jalankan Sumber Data ODBC sebagai Administrator
Klik tab System DSN dan klik Add
Pilih driver MySQL ODBC Unicode
Masukkan semua detail yang diperlukan seperti yang ditunjukkan. Jika Anda dapat melihat nama database, koneksinya bagus, jadi klik OK
Buat Server Tertaut ke Database MySQL
Di dalam SSMS;
Nama server Tertaut di bagian atas jendela berikutnya adalah yang harus Anda sertakan dalam kueri, jadi pilihlah dengan bijak
Kemudian pilih penyedia untuk ODBC dan masukkan nama Sumber Data yang Anda beri nama dalam pengaturan driver ODBC di atas
Masukkan detail login MySQL seperti yang dibuat di atas dalam posting ini
Saya meninggalkan semua Opsi Server sebagai default
Sebelum saya menekan OK, saya membuat skrip ini menjadi kode
USE [master] GO EXEC master.dbo.sp_addlinkedserver @server = N'MYSQL_SERVER_1', @srvproduct=N'', @provider=N'MSDASQL', @datasrc=N'MySQL_Linked_Server' USE [master] GO EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'MYSQL_SERVER_1', @locallogin = NULL , @useself = N'False', @rmtuser = N'linked_server_sql1', @rmtpassword = N'eCh0Ch4rl1E' GO_Jika sudah siap, tarik napas, lalu tekan OK atau jalankan SQL
Lihat di SSMS Object Explorer untuk melihat Linked Server yang baru. Kita harus dapat menelusuri database & objek yang memiliki izin untuk kita
Bagaimana cara membuat Server tertaut di SQL Server?
Buat server tertaut dengan SSMS .Buka Penjelajah ObjekPerluas Objek ServerKlik kanan Server TertautPilih Server Tertaut BaruApakah MySQL mendukung Server tertaut?
Sekarang, ketika driver ODBC untuk MySQL telah diinstal dan driver ODBC untuk terhubung ke database MySQL telah dikonfigurasi, mengonfigurasi Server Tertaut di SSMS untuk terhubung ke MySQL dapat dimulai. In the Linked server text box of the General tab, enter the name of how the linked server will be called (e.g. MYSQL_SERVER).Bagaimana cara menggunakan Server tertaut di SQL Server?
Buat Server Tertaut dari UI . Di Object Explorer, perluas node untuk database SQL Server. Di simpul Objek Server, klik kanan Server Tertaut dan klik Server Tertaut Baru. Dialog Server Tertaut Baru ditampilkanBagaimana cara membuat Server tertaut dalam contoh terkelola SQL?
Untuk melakukannya, buka SQL Server Management Studio dan sambungkan ke instance lokal. Di penjelajah objek, perluas Objek Server> Server Tertaut dan klik kanan dan pilih "Server Tertaut Baru. " Sekarang klik Keamanan. Di halaman ini, kita dapat mengonfigurasi opsi keamanan