はじめに
こんにちは!すぎもんです
オープンソースのリレーショナルデータベースであるPostgreSQL。ライセンスコストがかからないので、業務外で色々と自分の好きに触ってみたい!という方はもちろんのこと、商用利用にも耐えうる豊富な機能を持っています。AWSやAzureなどのクラウドベンダーもPostgreSQLを活用した比較的安価なサービスを提供しています。
今回やること
今回は、PostgreSQLのインストールから初期の基本的な設定をしてみます。
とりあえず自分の個人環境を作ってみたい、という方の参考になればと思います。また、DataSpiderを使って、PostgreSQLのテーブルを参照してみる基本的な接続もしてみます。
PostgreSQLの設定
PostgreSQLのインストール
PostgreSQLの公式ページから、ご自身の環境に応じたインストールファイルをダウンロードしてください。
PostgreSQLの操作には、psqlというコマンドツール型のインターフェイスがあります。
GUIでの操作がしたい場合は、pgAdminというツールをインストールします。
インストールファイルを実行しただけでは、下記の通り、psqlは使えません。
インストール先となる端末の「システム詳細の設定」から「システム環境変数」を設定します。
「システム環境変数」の「Path」を設定します。
環境変数「Path」にPostgresをインストールしたディレクトリを設定します。
私は「C:\Program Files\PostgreSQL\9.5\bin
」を設定しました。
システム環境変数を更新したので、OSの再起動をしましょう。コマンドプロンプトから、psqlコマンドの実行が正常にできていれば、インストールは無事完了です。
これでPostgreSQL操作は、psqlコマンドを使ってできるようになりました。
PostgreSQLの起動
「サービス」を開き、「postgresql」のサービスが起動していることを確認します。
「状態」が「実行中」になっているか確認しましょう。
もし「実行中」と表示されていない場合は、「postgreSQL」にカーソルを合わせて、右クリック「開始」を押下してください。
psqlコマンドを使う
PostgreSQL では、テーブルを作成したり、データを取得したり、データベースへの操作をする場合に、psql というコマンドツールがあります。
Windows環境から利用するにはPowerShellか、コマンドプロンプトを使います。
データベースへの「接続」のため、下記コマンドを実行します。
psql -h ホスト名 -p ポート番号 -U ロール名 -d データベース名
●ホスト名 : PostgreSQL が起動しているホスト名または IP アドレス
●ポート番号 : 省略可(デフォルト"5432"以外の場合は設定)
●ロール名 : -U postgres(省略するとOSのユーザー名)
●データベース名 : 省略可(自動生成されたpostgresデータベースに接続)
locahost の場合はホスト名、ポート番号、データベース名を省略できるので、psql -U postgres
でOKです。postgreSQLが正しくインストールされていて、環境変数の設定もOKであれば、psqlコマンドが使えます。
GUIベースでPostgreSQLを操作したい場合は、pgAdminというGUIツールをインストールしましょう。
尚、今回はデータベース内にテスト用のテーブルやデータを事前に作成しています。
DataSpiderの設定
次は、PostgreSQLにDataSpiderで接続してみましょう。
DataSpiderのStudioに任意のユーザーでログインします。
(DataSpiderのインストール等は省略。こちらをご参考にしてください。)
接続先(グローバルリソース)の設定
DataSpider Studioは、皆さんお馴染みのWindowsライクなUIでメニューが並んでいます。そこから「コントロールパネル」を選びます。
「コントロールパネル」の「グローバルリソースの設定」を選択し、PostgreSQLへの接続情報を設定します。
「新しいグローバルリソースの作成」を押下して、
PostgreSQLへの接続情報を、下記の通り設定します。
ホスト名 : localhost
ポート番号 : 5432
データベース名 : XXXXX
ユーザー名 : postgres
パスワード : ********
「接続テスト」を押下して、DataSpiderとPostgreSQLの接続テストをします。
下記の通り、接続成功画面が出れば接続確認はOKです。
テーブル読み取りのスクリプト作成
次に、PostgreSQLのテーブルをDataSpiderから参照してみます。
DataSpiderのスクリプトを作成して、PostgreSQLのテーブル読み取りをしてみましょう。
※尚、今回は別途データベース上にテストデータが用意されていることを前提とします。
まずは、「新規プロジェクト」を押下して、任意のプロジェクトを作成します。
プロジェクトは、作成されたスクリプトを管理するために作成します。
任意の「プロジェクト名」と、
任意の「スクリプト名」を付けて、完了を押下します。
DataSpiderのデザイナー画面が開きます。
デザイナの右側に「ツールパレット」があり、様々なロジックアイコンや他サービスを使うための設定アイコンが用意されています。今回は、「ツールパレット」-「データベース」-「PostgreSQL」内の「テーブル読み取り」アイコンを使用します。
「テーブル読み取り」アイコンを、デザイナ中央部分にドラッグ&ドロップすると、下記の通り、設定画面が出てきます。
「接続先」は、冒頭で「グローバルリソース設定」で作成した”接続先”を選択します。
すぐ下の右部分に「テーブルブラウザの起動」というリンクがあるので、そこを押下すると、テーブルブラウザが起動します。
PostgreSQLに存在するテーブル一覧が表示されるので、読み取りたいテーブルをクリックしてみてください。今回は、products
というテーブルを参照してみます。
DataSpiderの設定画面内で、PostgreSQL内のテーブル参照が可能です。
「DB読み取り」処理の前後処理のロジック検討の際に、実際のデータの型やサイズなどを確認した上で、ロジックを検討することが可能です。
テーブルブラウザの「このテーブルを選択」で対象のテーブルを選択すると、自動でスキーマ定義が設定できます。
右下の「抽出テスト」を押下すると、対象テーブルの件数確認もできます。
デザイナ上の完成スクリプトはこのようになります。
DataSpiderからデータベースのテーブル読み取りは、アイコン1つの設定で実装可能です。
最後に
今回は、PostgreSQLを使うための初期インストールとDataSpiderから接続してテーブル参照してみる、という基本的な部分をやってみました。PostgreSQLを一つの例として、DataSpiderからデータベースに接続する「容易性」を実感頂けたかと思います。
PostgreSQLを触ってみようと思っていた方や、DataSpider を触り始めて、これから何かデータベースに接続してみよう、という方のご参考になればと思います。
本記事では、取り掛かり部分のみのご紹介です。PostgreSQLを始め、期間限定で無料提供しているサービスは世の中にたくさんあります。是非ご自身のPCに気になるサービスやツールをインストールして、私も少しずつではありますが、一緒に色々とやってみましょう。
このブログでは、今後も様々なTopics記事や接続検証等、皆さんの参考になるような記事を投稿していきたいと思います!お読みいただきありがとうございました。それでは、また!