Aptana Studio と DB 開発統合

Aptana Studio の Subversion 統合に続きまして、今度は DB 開発系を Aptana に統合してみます。 諸般の事情でスクリーンショットは Eclipse for PHP Developer になっていますが、Aptana でも同様です。 🙂

ここでは、DB Viewer プラグインを設定しています。 これで SQL 開発やデータの閲覧を Eclipse 上から統一操作でできるようになります。

Download – DBViewer Plugin for Eclipse 開発プロジェクト – SourceForge.JP

DBViewer Plugin is an Eclipse Plugin as a Database Front end .
It connects with various Databases by way of JDBC Driver,
The function to assume not DB manager (DBA) but developer (Developer) is offered.

インストールは簡単で上記サイトから、 zigen.plugin.db_1.2.2.v20101009.jar など最新版の .jar を取得して、Aptana もしくは PDT の plugins ディレクトリディレクトリに格納して、Eclipse を再起動してください。

また、DB に接続するときに各データベース用の JDBC ドライバが必要になります。 ここでは、WordPress をサンプルにしていますので MySQL 用ということで下記からダウンロードします。

MySQL :: Download Connector/J

MySQL Connector/J is the official JDBC driver for MySQL.

.zip ファイルの中に .jar がありますので、それを分かりやすい位置に配置しておきます。 その他のファイルはここでは不要です。

準備ができたら Eclipse 起動で、DB Viewer のパースペクティブが作成されていますので、前回の SVN のパースペクティブ選択と同じように、右上の Other から選択します。

aptana21

でもって、接続先データベースを新規追加します。(ローカル環境で MySQL が立ち上がっているものとします。)

まずは JDBC ドライバの登録から。 先ほどの Connector/J の .jar をファイルの追加から指定して、適当なデータベース定義名を入力して Finish。

aptana22

次にデータベースの接続先を設定します。 ローカル環境ならホスト 127.0.0.1 でデータベース名を接続文字列で、またユーザ名とパスワードを指定します。

テスト接続でつながったらおめでとうございます。 🙂

aptana23

スキーマ選択します。 見たいデータベースだけ設定しておくと便利でしょう。

aptana24

これで設定完了です。

まずは DB ツリービューからぴこぴこすれば内容の閲覧ができることが分かります。 また表示からデータのパッチも可能です。

SQL 開発を行う場合は、SQL 実行ビューで SQL の記述が可能です。 テーブル名などのオートコンプリートや SQL 整形がききますので非常に便利です。

aptana25

ツリーの方からカラム名をとってきて SELECT つくってくれたりもできますね。 🙂

aptana26

プラグインをつくるときなど DB 直接アクセスしたりすることもありますが、そんなときのために環境を統合しておくと便利かと思います。 また最近ではカスタム投稿などの動作確認で (wp_)posts の内容がみたいこともありますのでそんな時にも。

WordPress を動かしながらテーブルを覗いていると、あ、カスタム系って post_type とか taxonomy に任意の文字列をいれれるようになったってことなのね、みたいな発見もあると思います。 🙂

Aptana Studio と Subversion 統合

Web 開発向けの統合環境に Aptana Studio がありますが、これに Subclipse を入れてバージョン管理を使うお話です。 Eclipse for PHP Developer でも同様にインストールできるはずです。 🙂

一応、Web サイトいじりのための Ubuntu (その2) の続きですが、今回は OS があまり関係ないのでタイトル変更。

前回。

Web サイトいじりのための Ubuntu (その2)

前回に引き続きまして、Web サイトいじりのための Ubuntu (その2)です。 WordPress 個人ブログなどをレンタルサーバに持っている方向けの、Ubuntu Tips。 前回は SSH でレンタルサーバに鍵認証で接続して、Nautilus と統合までしましたので、その次に進んでみます。

では張り切って行ってみましょう。

まずは Aptana Studio 3 のインストールから書いてみたいと思います。

実は Studio 3 はまだ beta なのですが、ベースの Eclipse が最新の Helios SR1 のようなのでこちらを選択しています。

Aptana Studio 3 Beta

The professional, open source development tool for the open web

Develop and test your entire web application using a single environment. With support for the latest browser technology specs such as HTML5, CSS3 and JavaScript; and Ruby, Rails, PHP & Python on the server side. We’ve got you covered!

ダウンロードに進んで Standalone 版の.zip を取得します。 オフィシャルでは Windows / Mac OS X / Linux に対応しているようです。 ここでは Linux 版をサンプルに。 他の OS でも同じだと思います。

Eclipse for PHP Developer にしたい方はこちらより。

まずは、適当な場所に .zip を展開。 ~/apps の下にいれてみました。

aptana02

実行ファイルをダブルクリックで起動します。 Linux の場合は AptanaStudio3 というファイルです。

aptana01

これだけでインストール完了です。

Aptana は Eclipse ベースですので、様々な Eclipse のプラグインが動作します。 ここから、Subversion にアクセスするために、Subclipse というプラグインをインストールしていきます。

Help –> Install New Software を選択します。

aptana03

Subclipse の配布アップデートサイトの URL を指定します。

URL 入力後エンターすると選択がでてきますので、Core SVNKit と Subclipse を選択します。 (Windows の方は SVNKit いらないですが、どうも経験的にネイティブ版はつながらないことがあるのでこっちのほうがいいかもです)

aptana04

で、次へ次へくらいで Aptana 再起動後インストール完了です。(途中、署名関係でワーニングがでます。)

起動したら SVN の設定をします。 Window –> Preference から SVN をたどります。 上のテキストボックスに SVN をいれるとフィルターできて便利です。

で、SVN インターフェースを SVNKit (Pure Java) にしてください。 これで Aptana からリポジトリに接続できるようになりました。

aptana04-02

さっそく WordPress のリポジトリに接続してみます。 右上のパースペクティブ選択ボタンから Other を選択します。

aptana05

Eclipse は画面に表示される部品のことをビューと呼び、そのセットのことをパースペクティブと呼びます。 ビューを使いやすいように配置しておいてパースペクティブに記憶させておく感じです。

Subclipse には Subversion アクセスに便利なビューを記憶したパースペクティブがデフォルトでありますのでそれを選択して画面を切り替えます。

aptana06

できたら、 SVN リポジトリビューにリポジトリを追加します。 右クリックから、新規 –> リポジトリ・ロケーションあたりを選択。

aptana07

でもって、リポジトリの URL を入力します。

WordPress の場合は上記になります。

aptana08

Finish 押下。 リポジトリの内容がでてきます。 🙂

リポジトリのビューで便利なのが、タグ通しの比較です。 たとえば、3.0.1 と 3.0.2 を選択して「ユニファイド Diff ファイルの生成」。

aptana09

このようにタグ通しを比較して、ファイルの diff もクリックから見ることができます。 何が変更になったのかなというときに役に立ちます。

aptana10

ちなみに、Aptana ではなく Eclipse for PHP Developer (2.2) をお使いの方は上記操作が Nullpointer Exception でおちてしまいます。 これは不具合で現在作成中の 2.2.1 では fix されているようです。

Bug 326227 – Cant doubleclick on file for comparing files in svn commit dialogue

Roy Ganor 2010-10-11 17:45:57 EDT

(In reply to comment #5)
> I have a similar problem on 64-bit Ubuntu running PDT
> 2.2.1.v20100826-1100-53184QAN4IJShLXONIZhXX4Na9Od
> 
> Will the fix posted above address all systems?

Please use this update site that includes a fix to this issue:
http://download.eclipse.org/tools/pdt/updates/2.2/milestones

とのことですので、上記アップデートサイトをしていして PDT をマイルストーンビルドにしてしまうといいかもしれません。(ぼくはしました)

では次に、リポジトリからファイルをチェックアウトしてみます。

落としたいタグなどを選択してチェックアウト。 遊びなら trunk (開発版)を落とした方がおもしろいかもですね。

aptana11

「新規プロジェクト~」を選択。

aptana12

PHP なので PHP プロジェクトにします。 PDT の方は PHP->PHPプロジェクトくらいにあります。

aptana13

ここが重要。 もしファイルをそのまま動かしたい場合は、チェックアウト場所を Apache の htdocs 配下にします。 これで、Aptana で修正しながらブラウザで確認できます。

aptana14

ぼくは、~/workspace/htdocs が Apache のドキュメントになっているのでそこを指定しています。 xampp を直で使っている場合は、 /opt/xampp/htdocs の下とかですね。 でもって、フィニッシュ。

チェックアウトが終わったらチェックアウトした場所に普通にファイルがありますので、ディレクトリのアクセス権限とかを指定して、Apache 経由でブラウザからアクセスすれば Hello, WordPress となることでしょう。 🙂

aptana15

チェックアウトしたプロジェクトは、右のエクスプローラの右クリックから「Team」配下の操作でいろいろできます。

コアを間違って修正したものを戻したり、プロジェクト全体のタグの向き先をかえたりできます。 また、trunk を落とした場合は日々の WordPress コアチームのコミットがおちてきます。 コミットコメントとかもみれますので、進化が見れて面白いです。

また、Eclipse Mylyn を使うと trac との連携も可能です。

hiromasa.another :o)» Blog Archive » WordPress と Eclipse と

さらに Eclipse には Mylyn という仕組みが備わっていて、ソースコード管理とタスクを結びつけることができます。 タスク、、というのはそう、WordPress Trac。

さて、今回は WordPress のリポジトリを直接指定していますが、自分でつくったリポジトリであるとコミット操作もできるようになりますので、版数管理がとても便利になります。 お客さんに納品した時点のものをタグきったり、差分をとったりですね。

ぼくはローカルサーバの CentOS にリポジトリをたてていますが、いきなりサーバたてるのは結構大変なので、まずはプライベートリポジトリをフリーで貸してくれる assembla とかで試してみるといいかもしれません。

ファイルの管理というのはなかなか神経をつかう上間違いやすいものですので、こういったバージョン管理の仕組みを使うと精神衛生上もよいですね。 よければお試しください。 🙂

Web サイトいじりのための Ubuntu (その2)

前回に引き続きまして、Web サイトいじりのための Ubuntu (その2)です。 WordPress 個人ブログなどをレンタルサーバに持っている方向けの、Ubuntu Tips。 前回は SSH でレンタルサーバに鍵認証で接続して、Nautilus と統合までしましたので、その次に進んでみます。 🙂

hiromasa.another :o)» Blog Archive » Web サイトいじりのための Ubuntu (その1)

ここみたいな個人 WordPress サイト(レンタルサーバのPHPアプリ)をいじる感じ向けの Ubuntu Tips を書いていこうと思います。 そうじゃないのも混ざってくるかもですがよろしくおつきあいを。

Linux を使っていると GUI と CUI のハイブリットが使えて結構便利ですが、GNOME の場合、Nautilus ファイルマネージャに以下の拡張をいれると表示ディレクトリを cd することなく端末に開いてくれるようになり、両利用が使いやすくなります。

後で使いますので、とりあえずいれておきましょう。 🙂

sudo apt-get install nautilus-open-terminal

さて、今回のテーマはレンタルサーバのファイル編集。

前回 SSH で接続しましたので、Nautilus ファイルマネージャからローカルファイルを転送できるようになりましたが、実は Nautilus はリモート側のファイルを直接編集することができます。

Nautilus の SSH 接続は内部的に Linux の FUSE (Filesystem in Userspace) と GNOME の gvfs で実装されていますが、これはリモートコンピュータをローカルディレクトリにマッピングしている感じの動作になります。 ゆえに、そこのファイルをアプリで書き換えるとうまいことリモートが書き換わります。

理屈は抜きに実践は簡単。 普通にレンタルサーバのディレクトリを Nautilus で開いて…

ubuntu1101

こうですら。 いちいちローカルにファイル落として編集後転送し直す必要はありません。

たとえば Geany テキストエディタで編集して保存すればそれだけでレンタルサーバ側が更新できます。 ローカルでの確認の必要ないちょいなおしの場合、急ぎの場合に非常に便利です。

# ぼくの環境だけかもですが Ubuntu 10.04 のときは保存後ファイルが 0byte になる不具合がでたことがあるので、初めてやるときは一応バックアップとってからやってください。 10.10 では問題ないようです。

さてこんなことやっていると、サーバ側がマスターになりはじめ何がなんだかになってしまいますが、UNIX の rsync というコマンドを使うとリモート –> ローカルに同期コピーしておくことができます。

これは wp-content 配下の画像ファイルなどのバックアップにも有効ですので、たまに実行しておくとよいです。

まずはローカルのどこかにディレクトリを作成して以下のファイル構成にします。 current ディレクトリは空です。

ubuntu1102

backup.sh の内容を以下のように作成します。

#!/bin/sh
 
rsync -avz --delete [ユーザ名]@[接続先ホスト名]:/[バックアップするディレクトリ]/ ./current/

コアサーバ/XREA 系であればこんなかんじです。 最後のスラッシュとか気をつけてください。 ぼくは面倒なので public_html 配下をフルバックアップとっていますが、wp-content の下だけでもいいかもしれません。

rsync -avz --delete another@s8.coreserver.jp:/virtual/another/public_html/ ./current/

できたら、backup.sh に実行権限をつけます。「プログラムとして実行できる。」

ubuntu1104

でもって、Nautilus から先にインストールした「端末の中で開く」を行って、

ubuntu1102

ターミナルをひらいて、、

./backup.sh

これで、ドヴァーっとファイルがリモートから転送されてきます。 ログイン認証は、前回の鍵認証をつかってくれます。 初回はホスト登録をきいてくるかもしれないので、”yes” してください。

初回なのでリモートファイルが全部転送されてきます。 この場合コアサバとかだと転送制限かたまにとまりますので、何回か試行します。 差分で持ってきますのでそのうち error なしで終わるはずです。

エラーの場合。 rsync error の文字列がみえます。

rsync: connection unexpectedly closed (255369687 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [receiver=3.0.7]
rsync: connection unexpectedly closed (1345764 bytes received so far) [generator]
rsync error: unexplained error (code 255) at io.c(601) [generator=3.0.7]

うまくいった場合。

sent 836 bytes  received 1668777 bytes  90249.35 bytes/sec
total size is 1139108950  speedup is 682.26

一度全部取得すれば、あとは差分でとってくれますのでたまに実行してあげるとファイルバックアップになってよいでしょう。 🙂

WordPress のバージョンアップ前など、必要に応じて current を別にコピーしておくとそちからバージョンアップ前に復元できます。(もちろんその前に DB も戻しが必要がありますね)

あとこの current ディレクトリはあくまでバックアップとしてここのファイルは編集しないほうがよいでしょう。 編集する場合は他にコピーしてからという方向で。

また、Ubuntu の場合、Ubuntu One 監視ディレクトリでこの操作を行うと、自動的にクラウド側にさらにバックアップできることになります。 Dropbox Linux 版でも同様にできるのかな。 便利ですね。

というわけで、以上その 2 でした。 次は、subversion についてか、xampp のインストールか、、ちょっと古くてよければ関連記事(↓)にでていると思いますので先にそちらを。 😀

ぼのを 「ちょっぱーを寝かせてきます。」

    W      W
 ( '∇')(´—`)
ヽ| P |人| P |ノ