OracleからPostgresqlへ移行 ora2pg


年末年始をかけて訳あってOracleで運用しているシステムを使い慣れたPostgrsqlへ移行。
ネットで調べるとora2pgというツールでPostgresqlの形式で出力できるようなので試してみた。

ora2pg

現在のOracleのバージョンなどは
Orcacle11g、正確には11.2.0.4.0である。
Oracle Linux上で動作している。

幸いにもコールドスタート用に準備していたバックアップ用のOracle Linuxがあったので運用しているシステムと同様の環境下でora2pgを動作させる事ができた。
これが本番環境しかないと色々と面倒である。

ora2pgを動作させるためにはいくつかのperlモジュールが必要なのでネットの情報を参考に

DBI
DBD:Pg
DBD::Oracle
String::Random
Compress::Zlib

をcpanでインストール。
DBD::Oracleだけは

cpan –fi DBD::Oracle

としないとインストールがうまくできなかった。

次にネットよりora2pgをダウンロード。
現在最新のバージョンは17.6、これを使用した。

http://ora2pg.darold.net/

ダウンロードしたファイルを展開し

sudo perl Makefile.pl
sudo make && make install

これで環境は整ったと思われたが、いざ変換用のスクリプトを起動してもエラーが出て正常に動作しない。
shared libがどうたらとかCan’t load~とか言われたので

/etc/ld.so.conf

にOracleのlibディレクトリを追記し

sudo ldconfig

することで何とか解決。
postgresqlのダンプファイルと同様の形式のファイルを出力することができた。

今回はLinux版のOracleからLinux版のPostgresqlなので文字のエンコードとか改行コードのようなものは特に問題なくできたようだけどWindows版のOracleからとかだとそのあたりも注意が必要だと思われる。
まぁとりあえず一度限りの事だから良いけどこの手の作業はすぐ忘れてしまうので一応メモ。

小規模なシステムでOracleである必要はないし不慣れなsqlplusと使わずに済むと思うとうれしいが半面Oracleに触れる機会が減るのでスキルが少し下がってしまうかも。
とはいえOracleマスターなどの肩書もないし自慢にもならんのだが。
Linux版のOracleは初期導入がかなり面倒だったのでその時は凄く勉強になったが数年前の事で忘れてるので次回もしOracleを使う事になったらWindows版を使用しようかと思う。

Ubuntu14.04LTSにてMinecraftサーバーを導入


先日ownCloudを入れたSSL試験用のubuntuサーバーであるが、まだまだxeonのパワーが余っているしメモリもfreeなので今更だが巷で人気のMineCraftサーバーを立ててみた。

サーバーの立て方は滅茶苦茶簡単だったので詳しくは割愛するがJDK入れてjarをダウンロードしてごにょごにょして起動するだけだ。
一応現時点での最新版なようです。

外部公開する人はルーター等のstasic natの設定を。
もともとこのゲーム自体には興味なかったが子供がやりたいという事でiPadにアプリを入れていくらか遊んでみた結果なかなか面白い。

まだあまり細かい事は分かっていないけど一人でやっても詰まらないという事でこんな感じになった。
しかしこのマイクラサーバー、iPad版のMinecraftPEでは接続できないっぽい。
なので正常に動作しているかも分からない(笑)
本当はタブレットでお手軽に楽しみたいけどWin版かMac版のMinecraftを購入しようか悩み中です。

追記
動作確認という理由もあってPC版のMincraftを購入してみた。
\3000するが変な課金ゲームよりそれなりに楽しめる要素がありそうである。

試してみたいという人はご自由にどうぞ。
いつでも入れるようにしておきますが今後どうなるかわかりません。
細かい設定などするかもですが、利用者がいるようであればきちんとアナウンスいたします。

接続先のURLはこのブログと同じ

k2-y.com

当方固定IPです。
PC版とMac版はつなげられる筈ですが他の物は不明。
64ユーザーまで接続可能な設定にしたくらいであとはデフォルト設定のまま。
どうぞよろしく。

Mac mini SSD換装


今更ながらMacMini(Late2012)の500GBのHHDをSSDに換装した。OSのアップグレードを繰り返すたびに重くなってアップアップしていたMiniちゃんを蘇生そして快適にするためである。
今回の換装はHDDの環境をそのまま引き継ぐ感じにしたかったのでクリーンインストールでなくCCC(CarbonCopyCloner)でHDDの中身をSSDへフルコピーする方法をとった。
CCCは使用期間制限のある体験版で十分なため特にお金が発生することは無いが購入しても$40程度だ。

手順としては
①SSDを初期化しておく。
②USB-SATAインターフェイスでMacMiniにSSDを接続
③CCCでフルコピー
④HDDとSSDを付け替える
である。
分解には専用工具が必要だが作業自体は簡単である。

今回用意したSSDはSanDiskのExtermePRO 240GBだ。
10年保証の奴である。
本当は480GBが欲しかったのだが予算の都合でこんな感じになってしまった。

DSC02744DSC02745
ちなみにSanDiskの場合Windows用の環境移行ツールは用意されており移行マニュアル的なものが同梱されている。

さっそくUSB-SATA I/FにSSDを接続しMacMiniに接続。
あっさりとに認識し初期化。
とりあえずMacintosh SSDという名でパーティションを切っておいた。

 

DSC02746DSC02747
CCCはコピー元とコピー先を指定し開始するだけ。
ここでしばらく待つ。
元のHDDが140GBほど使用されているがコピーには2時間ほどかかった。
SSDはHDDの半分の容量しか無いがデータは外付けのUSB2T HDDに保存しているので今後も大幅に増えることはないだろう。

SSDへのコピーが完了したら電源をOFFしいざ分解、付け替えである。先人の換装情報を参照しMacMiniを分解。

DSC02748DSC02749DSC02750

専用工具を使い交換するだけだが不器用を自覚している人の場合注意が必要だ。
特にコネクタ類など小さいので破壊しないように注意しよう。
他の参考サイトではファンを完全に取り除いて作業をしているが私は横にずらすだけでケーブルは外さないでおいた。
それと無線LANのケーブルも扱いは要注意だ(3枚目の写真)。

換装作業自体は特に難しいことはない。
さすがMacは互換機のおんぼろケースと違い寸法の精度が高いようできっちりハメないとネジが入っていかない。SSDへ付け替え蓋を絞める。
いよいよ緊張の瞬間である。
いざ電源ON。

ファーン♪という音とともにMacMini起動、とりあえず無事OSは起動した。
動作の方はというと元の環境と比較したわけではないけど、すごーく快適です。画面が出てから実際に使えるようになる時間も大幅短縮。起動もMacBookAir程度に速くなって大満足。
SSDの効果はやはり絶大ですなー。
上位モデルでさえHDDモデルのPCを今だ販売しているメーカーが信じられません。
CPU性能よりSSD。
これですな。

b-mobile高速定額実情 2016年9月現状


b-mobile高速定額の現状は、日中は500kpks程度。
夕方から夜12時過ぎくらいはクソ、100-200kbps。
夜中3時頃は爆速で30Mbpsとか出る、それとアップロードは一日を通して1~3Mbpsくらいは出るじゃじゃ馬な感じである。

これから導入する人は利用形態しだいでは注意が必要だ。

私のように夕方から翌朝くらいまで自宅のWiFiが利用できる場合は良いだろうけど、これ一本の場合はストレスでスマフォを叩き割る割ることだろう。

私の場合は日中の出先での使用が主だ。
少しレスポンスは悪いがSNSやテキスト系のサービスは特に問題ない。SNSの無料通話は特に途切れることなくできる。
それとSNSへの高画質(1枚で5MBとか)の写真投稿は比較的速い。
車での移動中に良くYoutubeを再生しっぱなしにしてラジオ代わりにしているがYoutubeのような動画は日中も再生可能。しかしおそらく最低のビットレートだ。
お昼休みの時間帯(12:00~13:00)は急激に遅くなるでの注意(100~200kbps)。
テザリングもメールやWeb閲覧程度なら大丈夫だ。
これで1980円/月に納得できれば定額なので精神的に安心である。

この高速定額、7GB/月の制限がないとは言え回線遅すぎてなかなか7GB/月いかない。(私は1年で7GB越えたの1回だけ)
だったらもう少し低価格でもっと速度のでるサービスが良いのではと思うが速度が出れば7GB/月超えそうなのでどうか。
平均的に1Mbps以上でれば同じく定額なplalaとかのサービスの方が良いかも。
そもそもテザリングを頻繁にしないand動画は見ないなら3GB/月くらいで繰り越しのできるものの方が良いだろう。
という事でクソのようなこのSIMを卒業して他のMVNOを検討中。
ちなみにテザリングでメールやWebを閲覧する程度ではあまり遅さは感じません。

Youtubeなどのストリームはおそえらく速度制限がかかっているだろう。日中はおそらく最低のビットレートだ。
理由は先日構築したVPN+Proxyを経由すると多少高画質で視聴でき頑張れば2GB/1日程行く。
youtubeからのパケットを制限しているのだろうか。

1980円/月なのでYoutube以外が比較的問題なく利用できれば文句はないが、やはり価格なりのサービスなんですかね。
他に移るか悩み中ですが家での仕事が多いので今のところあまり困ってなく、外出する事が多くなったら考えようかな。といった感じです。

試しに動画を再生しっぱなしにして通常より多くデータ通信を行ったけど帯域制限を掛けられるようなことはありませんでした(2016.9現在)。導入を検討している方は参考にどうぞ。

IMG_7319

でも糞遅いので覚悟が必要です。

b-mobile高速定額の通信速度を向上させる RTX1200+VPN+Proxy


B-Mobileの高速定額SIMを使い始めて結構立つ。
テザリングも出来、そこそこ速度も出るしYoutubeも画質は荒くなるがなんとか見れるので、まずまず満足なのだがさらなる向上を目指し自前のProxyを利用する事にした。
すでにProxy環境は構築されており正確にはProxy(Squid3)+ziproxy+privoxyという構成である。
こちらの設定はメモってないので
http://blog.asial.co.jp/1076
などを参考にしてほしい。

proxyは以前から自宅内で利用していたがiPhoneやiPadはWiFi接続時のみProxyの設定が可能であり3GやLTEだとそのままではProxy設定を行う事はできない。
そこで自宅に外部からVPN接続をしたうえでローカルのProxyを経由させるという方法を取ることにした。

我が家のネット環境はNTTのBフレッツでNTTの光電話ルーターをレンタルしているがルーターは別口でYAMAHAのRTX1200を使用している。
というわけでまずはiPhone-自宅間のVPN接続設定。
VPNはL2TPを使用する。
RTX1200側から普通にネットができる状態としてVPNの設定を追記する。なお、RTX1200のファームウエアがあまりにも古いとL2TPをサポートしていないのでファームウェアのバージョンアップが必要だ。

下記の例ではルーターのIPが192.168.100.1としl2tpクライアント用のIPが192.168.100.10~19、接続の際のユーザー名&パスワードは赤字のusernameとpassword。共有キーはhogehogeとしてます。適宜環境に合わせて修正してください。

pp select anonymous
pp bind tunnel1
pp auth request mschap
pp auth username
username password
ppp ipcp ipaddress on
ppp ipcp msext on
ip pp remote address pool 192.168.100.10-192.168.100.19
ip pp mtu 1258
pp enable anonymous

tunnel select 1
tunnel encapsulation l2tp
ipsec tunnel 101
ipsec sa policy 101 1 esp 3des-cbc sha-hmac
ipsec ike keepalive use 1 off
ipsec ike local address 1 192.168.100.1
ipsec ike nat-traversal 1 on
ipsec ike pre-shared-key 1 text hogehoge
ipsec ike remote address 1 any
l2tp tunnel disconnect time off
l2tp keepalive use on 10 3
l2tp keepalive log on
l2tp syslog ontop
ip tunnel tcp mss limit auto
tunnel enable 1

nat descriptor masquerade static 1 1 192.168.100.1 esp
nat descriptor masquerade static 1 2 192.168.100.1 udp 500
nat descriptor masquerade static 1 3 192.168.100.1 tcp 1723
nat descriptor masquerade static 1 4 192.168.100.1 gre

ipsec auto refresh on
ipsec transport 1 101 udp 1701
l2tp servivce on l2tp

RTX1200のLAN1がローカルエリアネットワークとして
ip lan1 proxyarp on
とする。

これでRTX1200側の設定は完了。
我が家は固定IPなので接続先が変わることはないが、動的IPの場合はnetvoalnteか何かで名前解決できるようにすればOK。

iPhoneやiPadなどのiOS側はVPNの追加で接続先や認証用のアカウントを設定する。
VPN設定の一番したの部分にProxyの設定箇所があるので自宅ルーターのWAN側IPかドメイン、それとProxyのポート番号を設定する。

効果はどうかと言えば微妙な違いだと思うが、画像が圧縮されているのとキャッシュの効果で幾分早くなったかなという程度。
広告がある程度ブロックされるのでそれも効いているかも。

通信量も減るし無いよりはよろしいかと思います。
何か厳密に測定できるような方法があればいいのですが。
速度計測アプリなどでは高速化手法の性質上測ることは難しいようです。

7251
V
PN接続中はこのようなVPNと表示される。