ERROR with rpm_check_debug vs depsolve

AWS で新規の CentOS 6.5 インスタンスを起動して、最初だから yum update でアップデートしてから始めようとしたら

ERROR with rpm_check_debug vs depsolve:
yum-plugin-fastestmirror is needed by yum-3.2.29-60.el6.centos.noarch
** Found 1 pre-existing rpmdb problem(s), ‘yum check’ output follows:
yum-3.2.29-43.el6.centos.noarch has missing requires of yum-plugin-fastestmirror
Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx-2015-04-26-08-54pY64yt.yumtx

という、わけのわからんエラーで update が止まってしまう現象となりました。

よくわからんので、おっしゃられるとおり

yum install yum-plugin-fastestmirror

として、インストールしてみたら yum update も通りました。

yum-plugin-fastestmirror は一番速いダウンロードサイトを選択してそこからダウンロードしてくれるプラグインのようです。

にしても、それでエラーになるって本末転倒なような。。。

preg_match の正規表現でglobal(全文)オプションが使えない

文字列 “abcdefgabcdefg” に対して、正規表現で /abc/ とやると、最初にでてくる abc がマッチして、二回目の abc にはマッチしない。

文字列に出てくるすべての abc にマッチさせたいばあいは、 /abc/g と言った具合に最後に g オプションをつける。

php の preg_match でも g オプションでいけるだろうと思い

preg_match ( ‘/abc/g’ , $string , $matches ) ;

としたところ

PHP Warning:  preg_match(): Unknown modifier ‘g’

という警告が出た。

調べてみたところ、こういう場合は

preg_match_all のほうを使え、ということだった

preg_match_all ( ‘/abc/’ , $string , $matches ) ;

で解決。めでたし。

ていうか、g オプションつけてよ。。。

RDS の Publicly Accessible 設定を変更したい

すでに VPC 内に起動している RDS に既存の EC2(Classic) から接続したくなったので、接続を試してみたら接続できませんでした。

どうやら VPC 内の RDS には VPC 外からは接続できないようです。

ただし、Publicly Accessible という設定が ON になっていれば外からでも接続できるとのこと。

早速 Publicly Accessible の設定をON にすべく、いろいろと調べてみたところ、どうやらこの設定は後から変更することはできないようです。。。

従って、接続できるようにするには、RDS のスナップショットを取り、別のインスタンスを Publicly Accessible ON で起動し、そちらにつなぎ直す、という手順が必要なようだ、、、ちょっとめんどくさいですね。