MB blog

こちらは主に自分用のメモです。

Wordpress サイトを Xdomain 無料サーバから AWS Lightsail に移行

独自ドメイン取得のついでに Xdomain の無料サーバ上に構築していた Wordpress サイト。無料でメールも使えるし、昔ながらの素朴な管理画面で気に入っていたですが、モバイルだとどうしても広告が出てしまい、やはり気になる... ということで、有料サーバに…

Charles で HTTP レスポンスの書き換え

web

転職して、すっかりサーバサイドのプログラミングをしなくなりました。このブログを久々に見ました。 さて、デモや検証などの目的で、お客さんのウェブサイト上で勝手にJavaScript を動かしたい... という時に、Charles Web Proxy というツールがとても便利…

一番簡単な WebLogic データソースのテスト

11g, 12c 以降の WebLogic データソースでは色々な機能が追加されており、データソースの設定をいじり回すことが多いです。 これまで WebLogic にデータソースを作成してテストをする際はわざわざ Web アプリにしてデプロイしていましたが、データソースがデ…

WebLogic 管理サーバの起動に失敗

BEA-090870 The realm "myrealm" failed to be loaded: 新しく構築した仮想サーバ (OracleLinux 6U5) に WebLogic Server 12.1.2 をインストール、ドメイン作成して起動したところ、上記のエラーメッセージが出て起動できない。 原因は /etc/hosts にホスト…

RMI server port を明示的に指定する(7u4 and later)

JMX over RMI で JMX モニタリングを行う際、サーバー側は「RMI registry port」(クライアントが接続時に指定するポート)と「RMI server port」(内部で使われるポート)と2つのポートを使います。後者の RMI server はデフォルトではランダムに振られる…

特定プロセスのプロセスメモリ使用量の推移をとりつづけるワンライナー

while [ 1 ]; do ps alx | grep <PID> | grep -v 'grep' | awk '{printf ("%d\t%s\n", $8,$13)}' ; sleep 5; done</pid>

DOM ドキュメントから XML 形式 String に変換する

Jdk1.4 では SOAPBody.toString() で全体が xml 形式で取得できていたのが、6ではルートエレメントしかとれなくなったという事象を確認。回避策として。 Document doc = soapBody.extractContentAsDocument(); StringWriter sw = new StringWriter(); Transf…

vncserver の使用ポート

VNCserverは、デフォルトポート 5900 に、VNCサービス起動時のディスプレイ番号を加えた数字が接続ポートとして使用されるようです。 vncserver :2 として起動した場合、ポートは5902。

AWRレポート作成方法

スナップショットの取得 任意のタイミングで、以下のsqlを実行(要 SELECT ANY DICTIONARY システム権限)。 SQL> EXECUTE DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT(); レポート作成 以下のコマンドを実行(要SYSDBA)。 @?/rdbms/admin/awrrpt.sql レポー…

Linuxで無線LANを使ってみる

RHEL をインストールした ThinkPad X61 で、実験用に複数のLANを使い分けたくなったのですが、PCカード型のNICが手に入らなかったので、内蔵のワイヤレス用インタフェースを無理やり使ってみることにしました。まず、/etc/sysconfig/network-scripts/ 以下を…

バイト配列の中身を16進数として表示する

何度必要に駆られても、覚えられずにそのたびにぐぐっている(そしてそのたびに過去の自分のメモに引っかかりorzとなる)定石的な手順を、改めて記録しておきます。 public class ByteArrayToHexString { public static void main( String args[] ){ // 適当…

char1文字をStringに変換する

Stringのコンストラクタには、char[] は引数に取れるんですが、1文字の char はとれないという、衝撃の事実が発覚。 強引に String に変換したいとき、以下のような目に遭わせてやるとよいでしょう。 char c = 0; String str1 = new Character (c).toString(…

はじめてのMySQL on RHEL

初めてMySQLをRHEL5.4にインストールしてみました。とりあえず入れて、動かして、テーブルつくって、リモートで繋げるようになるまでの覚え書きです。 ダウンロード ここから、最新の5.5.12をダウンロードします。Platformには「Red Hat & Oracle Enterprise…

パスワードなしの公開鍵認証でssh接続

expectで対話型シェルでは、bashの中でexpectスクリプトを読み込ませていますが、このサンプルには以下のような弱点があります。 ログインパスワードが平文でべた書き expectスクリプト内で生成した変数がbashに渡せない これらをクリアするために、ssh-agen…

シェルスクリプトで配列へのpush/pop

配列listに値varをpush n=${#list[@]} list[$n]=$var 配列のサイズを添字として、新たな要素を追加しているだけ。シェルスクリプトの配列のインデックスは0からです。 問題は、popです。 配列listから値varをpop n=`expr "${#list[@]}" - 1` var=${list[$n]}…

ATNDで, 気になるイベントをメールで通知させる

今年は社外の勉強会に定期的に行く、と上司と1年前に約束したことをふと思い出し、最近になって勉強会に出向くようになりました。イベント探しによく利用するのはご存知ATNDです。 しかし、たまに思い出したときに気になるキーワードで検索をかけてみると、…

Pythonで設定ファイルから値の読み込み (ConfigParser)

この記事はちょっと古いので書き直しました。 lake-michigan.hatenablog.com

Excel2007で簡単ヒストグラム

Excelでびっくりするほど簡単にヒストグラムが作成できます。とても便利なのに、知らんかった・・・のでメモ。 準備(アドインのインストール) Officeボタン > Excelのオプション > アドイン > 設定 > 分析ツール にチェックし、インストール データタブに…

expectで対話型シェル

sshやscpなど、対話型のインプットが必要なコマンドを、スクリプト化して運用に使いづらいので、expectパッケージを利用すると便利です。 OSにあらかじめexpectのパッケージが入っていない場合、下記コマンドでインストール。 yum install expect下記は、リ…

ROWNUMで結果のレコード数を制限する

あるカラムでソートした結果の、上位n件だけを抽出したい・・・というときに便利な LIMIT句というものがあります。 select * from EMPLOYEES order by EMPLOYEE_ID asc limit 10; これで、EMPLOYEE_IDのトップ10件のみ取得できます。 しかし、悲しいことにOr…

JadClipseのインストール on Galileo

とあるライブラリの中身を解読する必要が出てきたので、Eclipse上でデコンパイラJadが使えるようにするプラグイン、JadClipseを入れました。Eclipseは3.5です。 jadのインストール 本家のサイトは消えてしまっているので、下記urlのInternetArchiveからダウ…

JPA2.0のLockModeTypeについて

JPA2.0における変更点 Java EE 6仕様の一部であるJPA2.0。 JPA1.0からの変更点のひとつに、エンティティ更新時のリソースロック機能として悲観ロックをサポートするようになった、というものがあります。EntityManager # find や lock といったメソッドの引…

JPAのトランザクションについて

JPAのトランザクションについてまとめました。 エンティティマネージャの種類 コンテナ管理 EJBコンテナがライフサイクルを管理 DI or JNDI lookupにより取得 アプリケーション管理 アプリケーションのコード上で生成・破棄 EntityManagerFacutory # createE…

Apacheを非rootユーザで起動する

httpd.confに指定したapacheユーザ(非root)で、Apacheのリスンポートを81番で起動しようとしたところ、以下のエラー。 (13)Permission denied: make_sock: could not bind to address 0.0.0.0:81 1023番以下の特権ポートはrootユーザ以外はリスンさせられな…

ARCHIVELOG/NOARCHIVELOG 確認方法

以下のコマンドで、確認できます。 SQL> archive log listDatabase log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 19 Next log sequence to archive 21 Current log sequenc…

sql*plusの設定を起動時に自動的に読み込ませる

以下ファイルに設定を記録します。 $ORACLE_HOME/sqlplus/admin/glogin.sql設定例。 set lines 300 pages 5000 timing on set sqlp "SQL &_user> " には、ログイン中のスキーマ名が表示されます。 set autocommit off 11gR2から、なぜかautocommitがデフォル…

TRUNCATE, DROP, DELETEの違い

DROPは、セグメント(≒表)構造ごとデータを消し去る。 TRUNCATEは、High Water Markをセグメントの頭に移動させることによる、領域(エクステント)の開放がメイン。表構造は残るが、行データ自体は消える。ROLLBACKできない。 内部的には"HWMの移動"以外の何も…

ログアウトしても、コマンドを実行し続けるnohup

以下の形でうたれたコマンドは、ハングアップを無視する。コンソール上で実行され続けるコマンドを、teratermなどでリモートから起動するときなどに便利です。 nohup コマンド [引数] &

あるコマンドの出力結果を引数として別コマンドを起動するxargs

対象ファイルが複数あるようなコマンドを実行するシェルを書くときなど、forで回す必要がないので便利! あるコマンド | xargs 別のコマンド タイトルに"txt"を含む全ファイルから"hogehoge"をグレップする例。 find . -name txt | xargs grep hogehoge

SAXプログラミングのお作法 (DefaultHandlerの使い方)

characters() メソッドで引数の内容をStringBufferなどに貯め、endElement() にて内容を取得するのが定石。characters() の中でプリントすると、細切れになってしまう。http://hondou.homedns.org/pukiwiki/index.php?cmd=read&page=XML%20SAX http://d.hate…