アーカイブ

‘mysql’ タグのついている投稿

mysqlデータの移行

2010 年 4 月 3 日 admin コメントはありません

こんなことが起こってはいけないのですが、、、、

昨日、サーバでsudo関連のプログラムをfedoraサーバでテストしてたのですが、その際に、誤って、想定してないような値を渡してしまい、サーバ上のディレクトリやファイルのパーミッションがおかしなことになってしまいました。

rootでもログイン出来なくなってしまい、全てがおかしくなったのか、部分的におかしくなったのかも把握できず、とりあえず、初期化するしかないかなと思いつつも、調べて、調べて、試行錯誤してました。

そんな状況で、どうにかこうにか /var/lib/mysql 内のデータをFTP経由で抜き出しました。
それだけでは、DBのバックアップは出来ないだろうなと思いつつも、違うサーバ上の同じ場所(/var/lib/mysql)に置いてみると、普通にphpmyadminでデータが読み込まれました。
ただ、この状態では、データの参照は出来るものの、phpmyadmin上からデータの編集、削除や、phpプログラムからデータを追加することも出来ない状態でした。(read onlyというエラーが出ます)

これではあまり意味がないので、また試行錯誤していました。

新しいサーバ上のphpmyadminから参照しか出来ないread onlyのDBエクスポートし、/var/lib/mysql から、さきほど置いた古いDB(old_db)のディレクトリを削除。
この時点で、新しいphpmyadmin上には、古いDB(old_db)の情報はなくなっています。
その状態で、新しいサーバに古いDBと同じ名前(old_db)のDBを作り、エクスポートしておいた、ものをインポートすると、編集や削除も出来る状態で、新しいphpmyadminに移行することが出来ました。

phpプログラムからのデータの追加や削除なども出来ました。

朝から夜までずっと調べて、試して、丸一日かけて、やっと辿り着きました・・・。

今回は、DBのバックアップなどをしてなかったので、こんな状況になりましたが、普段からDBをしっかりバックアップしておけば、良いだけ、、という普通の教訓を得ました(_ _。)・・・シュン

カテゴリー: 雑記 タグ: , , ,

phpでwhois情報の取得

2009 年 12 月 26 日 admin コメントはありません

Net_Whois::query() – whois 問い合わせを実行する

pear install Net_Socket
pear install Net_Whois

もし、「WARNING: channel “pear.php.net” has updated its protocols, use “channel-update pear.php.net” to update」
という警告が出る場合は、以下を実行して、pear.php.netをアップデートします。
# pear channel-update pear.php.net

私の場合は、警告は出ましたが、アップグレードしなくても
pear install Net_Socket
pear install Net_Whois
のインストールは完了しました。
続きを読む…

カテゴリー: 雑記 タグ: , , ,

mySQL上で登録された内容に一致する文字列を置き換え

2009 年 12 月 25 日 admin コメントはありません

以下のようにSQLを実行することで該当箇所が置き換えされます。
phpのstr_replaceのような感じ。

UPDATE `テーブル名` SET フィールド名 =REPLACE (フィールド名,”置き換え前文字列”,”置き換え後文字列”);

カテゴリー: 技術的な話題 タグ: , ,

supplied argument is not a valid MySQL result resource

2009 年 11 月 27 日 admin コメントはありません

supplied argument is not a valid MySQL result resource

直前に記述したSQLクエリに問題があるということ。
たとえば、存在しないフィールドを指定していたり・・・。

私の場合は、なぜか全角スペースが入っていて気付かないままでした・・・。(_ _。)・・・シュン

カテゴリー: 技術的な話題 タグ: