2009年5月19日火曜日

無料クラウドでGrailsを動かす




以前JGGUGのコミュニティでお会いした方が、書かれた記事を参考に自分も、Grailsをクラウド上で動かしてみました。 (GAE/Jも、SDKは落としてあるんで、時間があったら早く試してみたいです。)
参考「Java/GrailsのWebアプリを無料クラウド環境で動かす」

■無料クラウドの登録
「Morph AppSpace」という、PaaSを提供しているサイトに行き、サインアップを行います。
@IT記事の方に丁寧に書かれているので、英語がチョット( ´_ゝ`)∂゛な自分でも簡単に登録が出来ました。





登録完了後、アクティベーションをする為のURLを貼り付けたメールが直ぐ来て、サイトへ行けば登録完了です。


■Subscriptionの登録とデータベースの作成
「New Subscription」のボタンを押すと登録画面へ移ります。ここで実行環境やドメインの設定を行います。実行環境には”Rails,Java,PHP”が選べて、データベースは”MySQL,PostgreSQL”が選べました。
リソースは、「Cube」という単位で、1Cubeだとフリーで扱えるようです。
(ちなみにJavaの開発環境は「JDK 1.5 or lower must be installed on your system」と書いてあったので、1.5以下が良いのかもしれません。自分は1.6jdkとGrails1.1で今回試しました。)



作成したら「Manage」ボタンで管理画面に移動します。管理画面の真ん中ぐらいに「Database」タブが有るので、Createをします。
右上のShowボタンを押すとデータベースの詳細が表示されます。







■Grailsの変更
DataSource.groovyに先ほどのデータベースの情報を記述します。今回はprod環境を前提にしています。







コマンドラインで「grails install-templates」をします。すると「project_home/src/templates/war」に”web.xml”が作成されるので、以下の様に追加します。







■アプリのデプロイ
アプリをデプロイする為に、管理画面の「Java Tools for Morph AppSpace Deployment」から、"Property File"とビルド用の"jar File"か"Ant plugin"の何れかをダウンロードします。自分は今回antでやりました。







自分の場合は、ダウンロードしたプラグインをEclipseに設定しました。
「eclipse_home/plugins/org.apache.ant_1.7.0.~/lib」にプラグインをコピー。
「設定Ant」→「ランタイム」→「外部JARの追加」で先ほどのプラグインを追加します。







デプロイ用のbuild.xmlを以下の様に作成します。
プロパティファイルやWARの場所は、適宜変えて下さい。 ここでのusername,passwordはアカウントのユーザー・パスワードです。







Antの実行。結果確認。













2009年5月14日木曜日

EclipseにGroovy plugin

EclipseにGroovyのプラグインを入たのでメモを残してきます。 (少し前なんでもう古いかもです。)

■参考
①Groovy公式サイト(http://groovy.codehaus.org/Eclipse+Plugin)

②Grails日本語公式サイト(http://docs.codehaus.org/display/GRAILS/Japanese+IDE+Integration)

③参考書籍 Grails徹底入門(218~219ページ)

■pluginの導入と初期設定
①Eciplse前提バージョン3.3、3.4、3.5(ちなみに自分のは日本語です。)

②「ヘルプ」→「ソフトウェア更新」→「使用可能なソフトウェア」タブを選択

③「サイトの追加」で”http://dist.codehaus.org/groovy/distributions/update/”をurlに登録。
(最新のGroovy plugin は→”http://dist.codehaus.org/groovy/distributions/updateDev/”)










④「ウィンドウ」→「設定」→「JAVA」→「ビルド・パス」→「クラスパス変数」に”GROOVY_HOME”と”GRAILS_HOME”を追加。












⑤「実行」→「外部ツール」→「外部ツールの構成」を開き、Grailsコマンドを実行出来る様に設定。









■Groovyプロジェクトの作成・実行・デバッグ
①「ファイル」→「新規作成」→「Javaプロジェクト」を選択して作成。











②作成したプロジェクトをプロジェクトエクスプローラより右クリックして「Groovy」→「Add Groovy Nature」を実行して”groovy-all-xxx.jar”をプロジェクトに取り込み。(最新のGroovyプラグインでは、Groovyプロジェクトが選択出来るので、「Add Groovy Nature」はいらないようです。)

③実行・デバッグは”Javaアプリケーション”で構成を作成し、プロジェクトと実行したいGroovyプログラムをメインクラスに指定。(最近のGroovyプラグインでは、Groovyデバッグが選択できるようです。)










■Grailsプロジェクト作成・実行・デバッグ
①「ファイル」→「新規」→「その他」→「Grails」→「New Grails Project」を選択して作成。



















②作成したプロジェクトのプロパティを表示して、”Groovy Project Properties”の”Groovy compile output location ”に”bin-groovy”を、”Disable~”の2つのチェックを外す。










③「ウィンドウ」→「設定」→「JAVA」→「デバッグ」→「ステップ・フィルター」で「パッケージの追加」を選び、”org.codehaus.*”と”groovy.*”を追加。(※これが無いとデバッグで来ませんでした。












④実行・デバッグは”Javaアプリケーション”で構成を作成し、「メイン」タブのプロジェクトとメインクラスに”grails.util.GrailsMain”を指定。 「ソース」タブのデフォルトに、作成したGrailsプロジェクトが含まれていない場合は、Grailsプロジェクトを追加。(※未検証だが、デフォルトに含む時場合と含まれない場合があった。plugin?Grails?のバージョンによって違うのか?eclipseの設定か?2台のマシンで動作が違ったので...。)











⑤デバッグ実行時に下記のボックスが表示されたら、今後通知しないにチェック。



2009年5月9日土曜日

JGUGG第2回g*ワークショップ

第1回に続き、JGGUG第2回g*workshopに参加してきました。
Grails1.1(もうすぐ1.1.1)を斬ると題しまして、1.1での新たな実装機能・Plugin等の貴重なお話を聞かせていもらい、満足して帰ってきました。
Grailsに関して、自分は教材を見てアプリを作る初心者もいいところレベルなので、参加者の方々のレベルが高いお話を聞かせて頂くと、感心してばかりで、まだまだ勉強不足だなと実感します。
懇親会でも、技術的な事ばかりでなく、仕事や業務に対する考え、ポリシー、姿勢など共感させられる話を聞いて、何だかパワーを貰った気がします。
頑張っている人、凄い人を見ると自分も”頑張らなきゃ”ってなります。

2009年5月8日金曜日

GroovyをPASE環境に続き

今回Groovyを入れて何となくの結果

1.PASE環境のGroovyソースからのビルドは、テストを除外しないと駄目のようだ。

2.Groovyshも「jline-0.9.94.jar」ところで、例外が投げられていそうで、”UNIX~云々閑雲”といわれてしまった。

3.Groovyスクリプトは問題なく動きそう。”~/.groovy/lib”に「jt400.jar」を配置して、DBの内容をprintlnしたら、PASEシェル上には特に文字化けせずに表示できたし、問題ないと思う。
やってないけど、Grailsもそのまま問題なく動くんでないかな?JAVAは偉大ですね。

import groovy.sql.Sql
driverClassName = "com.ibm.as400.access.AS400JDBCDriver"
username = "xxxx5035"
password = "********"
url = "jdbc:as400://localhost/ILEFLE"

sql = Sql.newInstance(url, username,
password, driverClassName)
//全レコードの処理
sql.eachRow("select * from MSA00F") {
println it.MSA001 + " -- ${it.MSA003} --"
}

結果
1 -- 鈴木 昇 --
2 -- 佐藤 素明 --
5 -- 山田 吉樹 --
7 -- 北上 淳 --
11 -- 中村 良治 --

2009年4月30日木曜日

homeの勘違い

iナビでIFSを見てみると、ルートに「.groovy」が出来てる?
「何で、ホームディレクトリに出来るはずやん?」と思い。シェルのexportで環境変数HOMEを確認したら、思いっきり”/”になってました。
「何故?」と思いきや、ユーザープロファイルの”HOMEDIR”値を変えた記憶が蘇り、やっぱりルートになってました。「/home/username」に変更してめでたし*2。

AS/400にGroovy

PASEにGroovy

AS/400のPASE環境にGroovyのバイナリを入れてみようと...。
入れる必要が有るのかと?言われてしまうと返す言葉もありません。
ASもJava動くんだからぐらいのノリです。

Groovyの公式サイト(http://groovy.codehaus.org/)からソースを入手して、antタスクでコンパイルした。
Test系タスクでこけている様で、 http://groovy.codehaus.org/Building+Groovy+from+Sourceに書いてあった「ant install -DskipTests=true」で実行したら、バイナリが出来た。(余りよくわかってないのと英語が解らない自分が情けない)
1.AS/400のPASE環境の「usr/local」にバイナリを配置
2.「QSYS/WRKENVVAR LEVEL(*SYS) コマンド」で"GROOVY_HOME”,"JAVA_HOME"設定
3.「call qp2term」でシェルを呼び出す
4.「export PATH=$PATH:$GROOVY_HOME/bin 」でパスの設定
5.「groovy --version 」>Groovy Version: 1.6.1 JVM: 1.5.0 でバージョン確認
6.「groovysh」で動作確認。>例外発生”jline.UnixTerminal.initializeTerminal(UnixTerminal.java:83)などなど

シェルは使えるが、何やら例外を投げられちゃいました。もう少し苦労が必要そうです。

Groovyの文法その3

クロージャー


def closure = { fname ,lname ->
println fname + ":" + lname
}
■「->」以前が引数。
closure("アイルトン","セナ")
<結果>アイルトン:セナ

■異なる数の引数を渡すと、MissingMethodException が発生。
try {
closure("ルフィ","D","モンキー")
}catch(MissingMethodException e){
println "MissingMethodException:クロージャー呼び出しエラー"
}
<結果>MissingMethodException:クロージャー呼び出しエラー


■暗黙の引数「it」が使用出来る。
closure2 = {
println it
}

closure2("ネルソン・ピケ")

<結果>ネルソン・ピケ

2009年4月6日月曜日

Groovyの文法その2

Groovyのループ処理

Groovyのforループはリストや範囲や配列要素の繰り返しが基本のようだ、Java風のforループもサポートされているが、途中かららしい。

cars = ["カローラ","クラウン","プリウス"]
//要素のループ
for (car in cars){
println "forループ1:" + car
}

//指定範囲ループ
for (i in 0..2){
println "forループ2:" + cars[i]
}

//java風ループ
for (i=0 ;i<3 ; i++){
println "forループjava:" + cars[i]
}

//whileループ
while(i-- > 0) {
println "while:ループ" + cars[i]
}

Groovy =>
forループ1:カローラ
forループ1:クラウン
forループ1:プリウス
forループ2:カローラ
forループ2:クラウン
forループ2:プリウス
forループjava:カローラ
forループjava:クラウン
forループjava:プリウス
whileループ:プリウス
whileループ:クラウン
whileループ:カローラ

2009年4月4日土曜日

Groovyの文法その1

GroovyのSwitch case文


これがGroovyの「Switch case文」Javaと同じですね。
break入れないと一致以降の処理は行われます。「1..3」はrangeで範囲をあらわします。「String」は変数のクラスと比較する事もできます。

a = 4

switch (a){
case "a":
println "aはaです。"
break
case 1..3 :
println "aは1~3です。"
break
case String:
println "aは文字列です。"
break
case Integer:
println "aは整数です。"
break
default:
println "aは不明です。"
break
}

groovy => aは整数です。

2009年3月30日月曜日

JGGUGに参加してきました

JGUGG第1回g*ワークショップ

先日横浜で行われた、JGUGG第1回g*ワークショップに参加してまいりました。内容はGroovyのデスクトップフレームワーク「Griffon」の紹介をして頂きました。
私のような初心者には判らない事も多数ありましたが、あまり初歩の質問ばかりでは、話の内容を止めてしまいそうなので、さすがにそれは出来ませんでした。もう少し図太いほうがいいのかもしれませんが...。
こんな私でも快く受入れてくれたみなさまに感謝です。非常に有意義な時間でした。第2回もぜひ参加したいと思いました。
話は変わって、Groovyの構文を忘れたとき用に書いときます。普段使わないと、似たような構文でどれがどれか分からなくなります。RPGみたいに固定フォーマットだと間違えようがないんですが...。

■if条件分岐
def a =1
def b=2
def c = a +b

if (c==3){
println "${a} + ${b} は ${c}です。"
}else{
println "答えは3以外です。"
}

■forループ

def a = 0

for (i in 1..5){
a++
a+=1
a-=1
}

println"${a}回ループしました"



つづく。

2009年3月26日木曜日

MYSQL for DB2 i

MySQL Storage Engine ibmdb2i

MySQLのストレージエンジンで、「ibmdb2i」のベータ版が公式サイトで、発表されていた。この「 ibmdb2i Storage Engine 」は、IBM i(AS/400)上にあるDB2のテーブルとMySQL上のテーブルをつなぐ架け橋だ。
例えばオープン系プログラマーは、MySQL上の「CUSTOMER」というテーブルに大して、顧客レコードを追加する。レガシー系プログラマーは、DB2上の「CUSTOMER」というテーブルにアクセスすると、MySQL側で作成された、顧客レコードを参照することが出来る。
実装レベルでは、MySQL側にテーブルがあって、DB2にもテーブルがあって同期をとっているのか?実態は1つで、どちらかが仮想テーブルなのかは?今のところわからない。なんせ、まだ英語のページ(http://solutions.mysql.com/engines/ibm_db2_storage_engine.html)しか見つからなかったんで。
これは、レガシー系で既存のテーブルが存在しているケースに、オープン系でも利用する際に、データの一元化が出来そうだ。但し、今のところは、既存ファイルに対しては、「ibmdb2iを適用できないので、MySQL側に作成してから、DB2のデータをコピーする必要がある。逆に既存のテーブルがMySQLで「innodb myisam」の場合は、「ibmdb2i」に変更することは容易だ。

2009年3月25日水曜日

アジャイルなその4

Groovyの特徴

いまさらだけどGroovyの特徴。
①Javaとの親和性が高い。
②変数の動的型付け
③構文終わりの「;」セミコロンが不要(Javaとの違い)
④import済みの以下のクラス
java.io.*
java.lang.*
java.math.BigDecimal
java.math.BigInteger
java.net.*
java.util.*
groovy.lang.*
groovy.util.*
⑤クロージャー(関数みたいに処理をまとめておいて、いつでも呼び出せる)
⑥拡張されたStringクラス
⑦publicなどの宣言も不要
⑧複数のクラスを持つことができる
⑨スクリプトが実行できる。(コンパイル不要。)
⑩コンパイルしてクラスを作ることも出来る。(groovycコマンド)
まだまだ、たくさん知らないことはあるけど、これから覚えていこう。

■Groovyの簡単な例
stringA = "Hello Groovy!"
println stringA

(結果)
groovy => Hello Groovy!

これでも内部的には、Mainメソッドが作られて、Javaのクラスにコンパイルされて、JVM上で動いているんだそうです。

■ちなみにJavaだと
class HelloGroovy{
public static void main(String[] args){
String stringA = "Hello Groovy!"
System.out.println(stringA);
}
}

2009年3月23日月曜日

アジャイルなその3

とりあえずGroovyのインスト



まずは、Groovyをhttp://groovy.codehaus.org/Downloadからダウンロード。

現時点での最新版は、1.5.xだったのだが、つい最近1.6が正式リリースをされたので、また違いを覚えなおすのも何なんで、1.6を再度ダウンロード。

ちなみに前提のJVMは1.4以上です。

自分の環境はWinなんで、インストーラー付のバイナリーがあり、インストール作業や環境変数”GROOVY_HOME”の設定なんかも勝手にやってくれる。

コマンドラインで、「groovy -h(または--help)」でヘルプが確認できる。
「groovy -v(または--version)」でGroovyとJVMのバージョンを確認できる。
「groovysh」でインタラクティブにGroovyを実行できる。

つづく...

2009年3月18日水曜日

アジャイルなその2

Groovyをお試か?

Javaと親和性の高いGroovy。一時はJdK6にも入るのでは何てぐらいだったみたいだから。
特に私はJavaが得意なわけではないけど、Javaの強力なクラスやAPIを使える事が、非常に大きなメリットである事はよく分かる。
だから、Java実装のJRubyやJythonが生まれてくるのかぁと思ったし、考えた人は発想が柔軟なんだなと思う。
そして、Groovyは、Rubyの後追いと言われればそうかもしれないけど、後出しジャンケンは必ず勝つのだから、それだけ痒いところに手が届くって事で、良い意味でとらえていいんじゃないかと思う。
車だって似たようなコンセプトだと、後出しの方が、真似だと言われても出来が良かったりするもの。
GrailsもGroovy+Railsのまんまの名前だけど、後出しだからいいんじゃないかな?その辺Rubyに詳しい訳じゃないんで、間単には、比べられないけど...。
Groovyに一番興味を引かれた訳は、これ。
Project Zeroは、Groovyをサポートしている事。Project Zeroは、IBMが提唱している、新しいオープン系のWebアプリケーション開発環境。有償版はWebSphere sMash。
IBM iもそのうち、WebSphere sMashがサポートされるかもしれないし。IBM iはJava VMは乗っているから、GroovyをAIXバイナリーに出来れば、PASE環境で動くんでは?ってな発想も浮かんだけど、時間があったらやってみたい。とりあえずは、Winのバイナリーを公式サイトから落として、Groovy1.6をインストールしました。

2009年3月17日火曜日

アジャイルなその1

Ruby? Python? Groovy?

自分は、どちらかと言うと基本レガシーな人種なんで、この状況を打破したいのですが、過去に色々と手を出しては、中途半端な感じになることが多く、悩んでいる今日この頃。
過去には、"Java",".NET"を少しカジって見たものの結局、「何とか組めるけど、本当にこれでいいの?」的な状況が、続くわけです。
仕事傍ら、ヒXXアカデミーみたいな、学校も行ったけど、「別にそれくらい自習できるでしょ!」ぐらいのレベルしか教えてくれないし。所詮お勉強はお勉強。
やはり自分のスキル向上及び、開発生産性の向上が、第一(そこは社会人だから、好きだから楽しい+仕事にならないと)なので、実際にはそれが満たされればコンピュータ言語は何でも良いのです。
まぁ、下回りのチョコッとした要件をPCで、作るぐらいは何て事はないんですが、基幹システム焼きなおせるぐらいのスキルは無いと意味無いなと思います。当然それに見合った、設計思想の点から変革が必要なんでしょうけど。

そんな中でもアジャイル開発可能な言語は、チョット惹かれるものがあります。
Ruby,Python,Groovyなどなど色々とありますが、どれかをやってみたいそんな気持ちになりました。
RailsやGrailsの「設定は規約に勝る」的な考えも共感できます。
昔Strutsやったとき、設定ばかりで「うーん?」ってなってたんで。

2009年3月16日月曜日

iSeries Access for Linux

iSeries Access for Linux

相変わらずIBMのUSサイトは慣れない。これでも最初よりはましだけど、遅くてもいいから何とか日本語のページもならんもんか?する気はないだろうけどね。英語わからない時点で、ノーサンキューって感じが伝わります。
それはさておき、ダウンロード。ライセンス的にはClient Accessの部類なので、それがあれば問題ないとのこと。パッケージはrpmなので(ちなみにIBMではRedhat系が推奨環境みたい?)、そんなこといってもdebian入れちまったので、(こんなことならFedoraにしときゃよかったよ)debパッケージに変換。依存関係のある、パッケージ落としまくって、インスコ。「ibm5250」をシェルで実行。
エミュレータ接続してサインオンするも、いきなり文字化け、丸一日格闘するも、改善せず。だれかdebian系で5250エミュ文字化けせずに使っている人おせーて。

2009年3月11日水曜日

Debian5.0インスト

Debain 5.0 インスト

1年くらい前に自分が使っていた、使われずじまいのw2kサーバー(Dell PowerEdge 600SC)が、放置されたままだ。
win環境で、いちいちwww,app,db鯖、たてるのがめんどいので、テスト用のサーバーとして、Debainを入れてしまおうかと。ここ数年、Linux系のOSなんてインストしたこと無いですが、ずいぶんお洒落というか、だいぶ昔とイメージ違いますね。GUIできました、てっきりコマンドラインでかとおもってました。
選択するだけで、勝手にwww,app,db鯖,php,pythonも入ってくれるので簡単にLAMP環境も作れちゃいます。
winより、よっぽど良いかもしません。一応ibm i? i5? AS/400?の仕事もしますんで、エミュレータくらいと思い調べてたら、iSeries Access for Linuxなんてありました。(例のごとく、IのUSサイトですけど...)今度、エミュを入れてみます。

2009年3月6日金曜日

PASE環境にRubyその2


Rubyのバイナリー

AIXのコンパイラーが無いので、バイナリー探しの旅に出た。
苦手な英語のページでも何とか読まねばならないのが、たいていの旅の辛い所。もうちょっとまじめに、英語をやっときゃよかった。
何とかバイナリーを提供している奇特な方のページを見つけて、ダウンロードしてインスト。QP2TERMでRuby実行。よしっ!rubyコマンドは、動いた。じゃあirb。うごかねぇ...。やんごとねぇ...。
何か別のライブラリが必要なのかな?自分でコンパイル出来ない以上、如何ともしがたいし、ちょっと飽きた。リフレッシュもかねて、使っていないPCにdebian5.0でも入れよう。

2009年3月4日水曜日

PASE環境にRubyその1


PASE on Ruby

PASE環境にせっかくMYSQLが入ったので、先刻受けてきたセミナーの影響もありまして、Rubyも入れてしまえという事になりました。

ちなみに、PHPは既にZend Core i5/OSが入っています。しかも有償ライセンスを購入したので、何のセットアップせずに動いています。
i5上でPHPの勉強している同僚がいますが、設定やそういったスキルも身に付くことがなくなるのは、それはそれで如何なものかと...。

まずRubyのダウンロードということで、公式ページに行くと、さすが日本人が作っただけあって、日本語のオフィシャルページでした。ソースをせっかくなので最新版1.9をダウンロードして、PASE環境に導入と行きましょう。あんまし、AIXもLinuxも詳しくないので、マニュアル読みながらっ?コンパイル...?あっ!AIXのコンパラーって無いかも!!i5に関連するライセンスしか、会社にはありませんでした。
PASEでAIXバイナリーが動くのは、良いけどAIXのコンパイラーも何か1つは欲しいなぁ。何か無償のとないかし?あるかも知れないけど、よく分からないので、RubyのAIX用バイナリーを探したほうが、早いかもと言う事で、探すたびに出たのでした。

2009年3月3日火曜日

PASE環境にMYSQLその3


MYSQLのスタートアップ

まずは、サブシステム「MYSQL」を作成。(よく考えたら、MYSQLのデーモンしか動かないので、OPEN系用にOPENSYSとかにすれば良かった。)
MYSQLサブシステムの自動実行に、作成したCLEをADDAJE追加。WRKSBSDにて確認。QSTRUPでSTRSBSを追加。次の日IPLで確認したらOKでした。
i5にMYSQL乗ったから、今度はRubyをPASE環境に入れてみよう。

2009年2月27日金曜日

PASE環境にMYSQLその2


MYSQLデーモンの自動起動

インタラクティブにMYSQLのデーモンを起動するには、
CL> CALL QP2TERM$=> cd $MYSQL_HOME/bin$=> mysqld_safe --user=MYSQL &となる。
毎回こんなことする訳には、いかないので、IPL時にデーモンが起動されている状態にしたい。
思いつく事といったら、Qsys/Qstrupで開始する事ぐらい。
という事でまずは、スタートアップ用のCLを組まなければ...。
PASE環境のデーモン呼び出しってどうすんの?調べたら...。
CALL QP2SHELLなる呼び出しPGMが有るようだ。詳しくは、IBMインフォメーションセンターを。
ここで困ったのが、CCSID「5026」でもって、PASE環境の英小文字が入力できん。
しょうがないから、CCSID「5035」のソースファイル別に作って、さぁ作成。あれ?「5035」なのにまだ入力できない。コマンドラインやテキストは入力できるのに、肝心のソースに記述出来ない!?ここで昔記述したCLで、JAVAプログラムの環境変数をセットするのに、英小文字使ったのを思い出して、そのソース見てみるとタイプが”CLLE”になってる。”CLP”は出来なくて、”CLLE”は、出来る?とにかく”CLLE”にして無事プログラムが出来たので、デーモンを起動する事が出来た。
バックグラウンドで常駐しているので、どうせならサブシステムを別にしよう。

2009年2月26日木曜日

PASE環境にMYSQL

Yahoo!のブログが遅すぎるので、気が向いたらこちらに移る用意。


MYSQLのインスト


先日のセミナーでi5向けMYSQLのストレージエンジン「IBMDB2I」が3月下旬ころ発表とか何とか。面白そうだったので、暇にかまけて、MYSQLをi5のPASE環境にインストしてみた。

まずMYSQLの公式サイトから、MYSQL for i5/OSをダウンロードする。

SAVF形式だから、ftpでi5へアップしてリストア。インストールライブラリ「MYSQLINST」が復元されるので、その中にインストールコマンドがあるので、呼び出すだけでとりあえずOK。

ただCCSIDを37を忘れずに。(CHGJOB CCSID(37) => MYSQLINST/INSMYSQL)当方のAS400未だCCSIDが5026、半角カナがしっかり生きてます。

でもOpen系の何かをやる時に、いちいち面倒くさい。いっそ5035に変えてしまいたい。「/etc/my.cnf」のエンコードをUTF-8に変えて設定完了。QP2TERMでPASEのシェル呼び出して、MYSQLデーモン起動して、MYSQL接続して、DB作って、ユーザー設定して、動作しました。

じゃあ次は、IPLでデーモンを自動起動するには??