SQL Server 2019でリンクサーバーを作成する方法
データベースを利用していると、ログインしているデータベースではなく、ほかのデータベースにアクセスしなければならない場合があります。そんなときにSQL Serverではリンクサーバーを使います。
リンクサーバーを使えば、色々なデータベースをリンク(接続)させることができ、アクセスできるデータベースが限定されなくなるのです。また、SQL Server以外のデータベースへもアクセスが可能です。
ついては当記事で、SQL Server2019におけるリンクサーバーの作成方法から使い方までを解説していきます。
- SE
- SQL Serverでログインしているデータベース以外のデータを操作したいのですが、何か良い方法はありませんか?
- PL
- それならリンクサーバーを使うと良いですよ。リンクサーバーを使えば、ログインしているデータベースから別のデータベースへログイン不要でアクセスできるようになります。作成方法と使い方も簡単なので、これを機に学んでおきましょう。
この記事でわかること [見る]
SQL Serverでリンクサーバーを作成する
リンクサーバーを使うには、あらかじめSQL Server側で作成しておく必要があります。
実際にSSMSで作成していきましょう。今回は例として、同じSQL Serverでリンクサーバーを設けます。
まず、「サーバーオブジェクト」→「リンクサーバー」で右クリック、「新しいリンクサーバー」をクリックします。
次にリンクサーバーの情報をセットしていきます。
ページ選択の「全般」を開いてください。
基本的な入力および選択項目は以下のとおりです。
- ・リンクサーバー:作成するリンクサーバーの名称
- ・サーバーの種類:「その他のデータソース」を選択
- ・プロバイダー:「SQL Server Native Client 11.0」を選択
- ・製品名:リンクサーバーを作成(設置)するサーバー名(IPでも可)
- ・データソース:リンク(接続)するサーバー名(IPでも可)
※他データベースのリンクサーバーを作成する場合、リンクするデータベースに合わせて「プロバイダー」「製品名」「データソース」を入力してください。
続けて、左部ページ選択にて「セキュリティ」タブを開きます。
ここでログインの接続方法を指定しておきます。
今回はすでにログインしているローカルのSQL Serverへのリンクサーバーを作成しているため、「ログインの現在のセキュリティコンテキストを使用する」を選択。
通常は、下の「このセキュリティコンテキストを使用する」を選択して、以下項目を指定します。
- ・リモートログイン:ユーザー名
- ・パスワード:接続パスワード
以上で設定は終了、「OK」をクリック。
画面のように入力した名称のリンクサーバーが設定されました。
SQL ServerのTransact-SQLを使ってリンクサーバーを作成する
同じリンクサーバーをTransact-SQLを使って作成していきます。
sp_addlinkedserverでリンクサーバーを設定し、sp_addlinkedsrvloginでアクセスのための情報を設定します。
1
2
3
4
5
|
EXEC sp_addlinkedserver
@server = 'LINK_2',
@srvproduct ='localhost\SQLEXPRESS',
@datasrc = 'localhost\SQLEXPRESS',
@provider = 'SQLNCLI11',
|
- ・server:作成するリンクサーバーの名称
- ・srvproduct:リンクサーバーを作成(設置)するサーバー名(IPでも可)
- ・datasrc:リンク(接続)するサーバー名(IPでも可)
- ・provider:SQL Server Native Client 11.0(データベースに応じる)
1
2
3
4
5
|
EXEC sp_addlinkedsrvlogin
@rmtsrvname = 'LINK_2',
@useself = 'true',
@rmtuser = 'null',
@rmtpassword = 'null'
|
- ・rmtsrvname:リンクサーバー名を指定
- ・useself:基本はfalse(今回はローカル環境内Windows認証のためtrue)
- ・rmtuser:ユーザー名
- ・rmtpassword:ログインパスワード
ご覧の通り、新たなリンクサーバーが作成されました。
- SE
- 本当に簡単に作成できるんですね。
- PL
- リンクするデータベースを指定して、ログイン名とパスワードを設定するだけですからね。これで複数のデータベースへ自由にアクセスできるようになります。
SQL Serverでログイン外のデータベースにアクセスするにはリンクサーバーを使おう
リンクサーバーは一度設定しておくだけで、好きなときに使えるようになります。データベースの入れ替え時など、データが複数に散らかってしまっているときは特に効果を発揮します。ここぞというときのために、SQL Serverのリンクサーバー機能を習得しておきましょう。
Search キーワード検索
Popular 人気の記事
-
【VB.NET入門】DataGridViewの使い方まとめ
公開: 更新:
reccomended おすすめ記事
-
【.NETが統合】.NET 5の概要と今後のリリース予定
公開: 更新:
Categories 連載一覧
Tags タグ一覧
Jobs 新着案件
-
蔦屋書新店オープンに関するアプリ開発/Oracle/東京都渋谷区/【WEB面談可】/在宅勤務
月給56万~59万円東京都渋谷区(神泉駅) -
資産運用会社向け残高管理システム運用保守/SQLServer/東京都中央区/【WEB面談可】
月給50万~60万円東京都中央区(銀座駅) -
資産運用会社向け残高管理システム開発のテスター/SQLServer/東京都中央区/【WEB面談可】
月給25万~35万円東京都中央区(銀座駅) -
放射線部門システムパッケージの運用保守/Oracle/東京都港区/【WEB面談可】
月給50万~60万円東京都港区(品川駅) -
放射線部門システムパッケージの開発のテスター/Oracle/東京都港区/【WEB面談可】
月給25万~35万円東京都港区(品川駅) -
営業フロントシステム運用保守/ASP.NET/東京都江東区/【WEB面談可】
月給50万~60万円東京都江東区(木場駅)