【Access】不真面目にシステム開発を考える2~データベースの準備~

サーバにデータベースを用意する

自分で梅干し漬けようか迷っているjimです。どうも✋

 

梅干し好きなんだよねぇ。。

はい。ってことで、今回はサーバにデータベースを用意します。

WEBアプリならば、、

サーバにプログラムを置きます。そのプログラムをサーバが実行しサーバ内のDBにアクセスします。なので、ユーザーがサーバのプログラムにアクセスできるようにポートを開放します。ユーザーが直接DBにアクセスするわけではないので、データベースアクセス権限みたいなことはプログラムで行います。

しかし、今回はデスクトップアプリなので、、

各ユーザーの端末にプログラムを置きます。そのプログラムが動き各ユーザーの端末からサーバのDBにアクセスします。なので、サーバのDBにアクセスできるようにポート開放をします。そうなると、各端末でSQLを書けば好きなようにデータを取り出せてしまうので、データベースアクセス権限はDBMSで設定します。

 

 

SQLServerをインストール

今回はAccessシステムにするので同じMicrosoftのSQLServerをサーバにインストールする。

正確に言えば、SQLServerマネジメントシステムをインストールします。

インストールは簡単だと思います。

ログインして一つtestというDBを作成しCREATE TABLE文を実行。

 

 

他端末からSQLSeverにアクセスできるようにする

確か面倒だったんだよなコレ。。。

Windowsのグループを作って、SQLServerでWindows認証の新しいログインを作成する時にそのグループを指定する。

そうすればグループごとにアクセス権限をコントロールできる。。。

なんだけど、WindowsHomeはグループ作れないっぽい。

本当はWindows認証とSQLServer認証を使い分けるのがいいのでしょうが、今回は他端末のログイン用にSQLServer認証のログインユーザーを作ることにする。

別端末からSQLServerを使えるようにするには、下記3点の設定を行う。。。

 

1、ログインユーザーの作成

2、SQLServerの設定

3、ファイアウォールの設定

 

では、早速やっていきやしょう。

 

1、ログインユーザーの作成

他端末からアクセスするためのログインユーザーを作成します。

今回はSQLServer認証のログインを作るが、Windowsグループを作ってWindows認証のグループログインを作成しておけばWindowsグループでアクセス権限をコントロールできる。

↓SQLServerのセキュリティからログインで右クリックし『新しいログイン』

 

↓全般から適当なログイン名を入力し『SQLServer認証』を選択し適当なパスワードを入力(他端末からアクセスする時のログイン名とパスワード)

 

↓次にユーザーマッピングからデータベースの権限を付与し(このログイン名でアクセスできるデータベースを選択)db_ownerにチェックを入れOK

 

↓いや、もう少し権限をあたえておきましょうか

 

 

これでログインユーザーが作成できました。

権限を付与したデータベースを開いて、直下にあるセキュリティを開くとユーザーに作成したユーザー名が表示されていると思います。

 

2、SQLServerの設定

そしたら次はSQLServerのマネジメントと構成マネージャーの設定をします。

↓SQLServerのプロパティ

 

↓セキュリティからサーバー認証を『SQLServer認証とWindows認証』を選択

 

↓次に接続のリモートサーバー接続の『このサーバーへのリモートを許可する』を選択をOK

 

これでSQLServerでやることは終わり。

次は構成マネージャーの設定。

 

↓スタートメニューのMSSにある『SQLServer構成マネージャー』を選択

 

↓SQLServerネットワークの構成にMMSQLSERVERのプロトコルがある場合『名前付きパイプ』を無効・『TCP/IP』を有効にする(IPアドレスの『IPALL』にあるTCPポートを1433にしておく)

 

↓SQLServerネットワークの構成にSQLEXPRESSのプロトコルがある場合『名前付きパイプ』を有効・『TCP/IP』を無効にする

 

↓最後にSALserverのサービスにあるSQLServerを右クリックしコンテキストから再起動を選択(MMSQLSERVER・SQLEXPRESS)しSQLServerBrowserの開始モードが自動になっていることを確認しておく

 

これでSQLServerの設定は終わり。

 

3、ファイアウォールの設定

最後にファイアウォールの設定。

 

↓タスクバーにある『^』からWindowsセキュリティを開き『ファイアウォールとネットワーク保護』の詳細設定を選択

 

↓『受信の規則』を選択し『新しい規則』を選択

 

↓規則の種類を『ポート』にする

 

↓プロトコルおよびポートは『TCP』を選択し特定のローカルポートを構成マネージャーで設定したポートにする(1433)

 

↓操作は『接続を許可する』

 

↓プロファイルは全選択

 

↓適当な名前を付けて完了

 

これで終わり。

長かったねぇ。長かったよぉ。

他端末にSQLServerのマネジメントをインストールしSQLServer認証でアクセスできればOK。

出来ないのならファイアウォール自体を切ってみる。それで繋がればファイアウォールが悪い。繋がらなければSQLServerか構成マネージャーかログインユーザーの作り方をミスってます。

 

 

 

んなわけで、データベースを用意するところまで終わりました。

ここまでは何の言語でシステム作るにしても一緒かな。

次回はAccessでメインメニューを作成します。

したら、またね✋