人気記事

広告

記事検索

MOVION.netについて

WEB技術に関することや、気になるWEBサイトなどについて個人的なメモを残すためのブログです。

その他運営サイト

2008年04月18日(金)

MySQL,PostgreSQLのよく利用する確認操作

〇データベース一覧を確認する
MySQL

  1. SHOW DATABASES;

PostgreSQL
※シェルで実行

  1. psql -l

〇 接続しているデータベースのテーブル一覧を確認する
MySQL

  1. SHOW TABLES;

PostgreSQL

  1. \z

〇テーブル(items)のカラムを確認する
MySQL

  1. DESC items;

PostgreSQL

  1. \d items

〇実行されているプロセス一覧を確認する
MySQL

  1. SHOW PROCESSLIST;

PostgreSQL

  1. SELECT * FROM pg_stat_activity;

〇文字コードを確認する
MySQL

  1. SHOW VARIABLES LIKE "char%";

PostgreSQL
※シェルで実行

  1. psql -l

で、確認してください。

2008年04月16日(水)

カラムを変更したPostgreSQLのエクスポートデータをMySQLにインポートする(その2)

では、 status_flagカラムが追加される場合ですが、もともとあるカラムがなくなる場合はちょっと面倒なので、以下はその1つの方法です。

PostgreSQL

  1. CREATE TABLE items (
  2. item_id SERIAL PRIMARY KEY,
  3. name VARCHAR(50),
  4. price INTEGER,
  5. color VARCHAR(20),
  6. createtime timestamp NOT NULL DEFAULT current_timestamp,
  7. delete_flag CHAR(1)
  8. );

MySQL
status_flagカラムを追加し、colorカラムは削除したいものとします。

  1. CREATE TABLE items (
  2. item_id INTEGER NOT NULL AUTO_INCREMENT,
  3. name VARCHAR(50),
  4. price INTEGER,
  5. status_flag INTEGER,
  6. createtime DATEMTIME
  7. delete_flag CHAR(1)
  8. );

どのタイミングでカラムを削除するか、まあどこでも出来るわけですが、
個人的に手っ取り早いかなぁと思う手順です。

PostgreSQLで、テーブル定義を変更しちゃったほうがよさそうなので、加工用でデータベースを作成。

  1. su postgres
  2. createdb sampledb_tmp
  3. pg_dump sampledb > sampledb.20080416.dump
  4. cat sampledb.20080416.dump | psql sampledb_tmp
  5. psql sampledb_tmp

で、テーブルのカラム構成を変更したテーブル(items_tmp)を作成。

  1. SELECT item_id,name,price,NULL AS status_flag,createtime,delete_flag INTO TABLE items_tmp FROM items;

そして後はエクスポート

  1. COPY items_tmp TO ‘/home/postgres/items.tsv’;

次に、MySQLでインポート。

  1. su takahashi
  2. mysql -u root -p sampledb
  3. —-
  4. mysql>LOAD DATA INFILE "/home/postgres/items.tsv" INTO TABLE items FIELDS TERMINATED BY \t;
  5. —-
2008年04月16日(水)

Ajax(Comet)対戦オセロゲームをApache&PHP&Javascriptで作成中

続・Ajax(Comet)対戦オセロゲーム 遊び方編 も参照してみてください。

ajax-reversi-01.jpg

http://play.ihihiworks.net/  (2012/4/24 AWSを利用)
※4人オセロゲームになっています。

※自宅サーバのため、常時稼働はしてません。たぶん12時~24時くらいは稼働させてます
※バグが多々多々あります。かつ、開発環境です。
※IEの場合ieerbugがでます。firefoxの場合FireBug入れてないといきなり変になるかも。

今さら感は否めませんが、Cometなオセロゲームを勢いで作成中です。

railthelloとかあったけど。オセロゲームなのは、Pontiyを作っててまんまオセロゲームの仕組みを使えたから。
どうせなんで、4人オセロとかに拡張しようかなぁとも思ってます。

でもって現実的にはやっぱり、FMSなりJavaアプレットなり使った方がよいなぁと。
jetty6もちょっとさわってみたけど、クライアント数が増えることを想定してないので、とりあえずApacheとPHPで実装中。
C10KいやC1Kどころか、C100にも耐えられるか謎です。

実装は、PHPだけでリアルタイムAJAXチャットシステムを構築する方法。
を参考にさせていただきました。

アクセス数さえ少なければ、負荷もたいしたことがないので、
レンタルサーバに設置しようかと思いましたが(こことか)、無限ループぽっくなったり、デットロックぽくなったり、怪しげな挙動をする可能性が高いので、現状自鯖です。
幾分、問題をなおしたものをここのサーバにも置いてみましたが、万一アクセスが多くなったら撤去します。

でもって、自鯖にしてるパソコンはどうも共振してあまりにうるさいので夜はshutdown -h nowしてます。
リンクつながらなかったらごめんなさいorz

て、このサイトで宣伝して人が来るとも思えませんが・・・。

参考:
おとこのCometアプリケーション! 非モテのためのJetty 6 Continuation入門まとめ(前編)
Lingr and Comet - 技術解説編(CNET Japan)

2008年04月8日(火)

拡張子がcgiのファイルの改行コードとパーミッションを一括で変更するbash

どんな状況で使うんだって感じですが、もしかしたら同じものを求めてる人がいるかも?!

  1. #/bin/sh
  2.  
  3. EXEC_DIR=/var/www/public_html/
  4.  
  5. echo "change line feed code to LF";
  6. for filename in `find $EXEC_DIR -name "*.cgi"`;
  7. do
  8.   cp $filename $filename.bak
  9.   nkf -ed $filename > $filename.lf;
  10.   mv $filename.lf $filename;
  11.   rm $filename.bak
  12.   echo $filename;
  13. done;
  14.  
  15. echo "chmod cgi files";
  16. find $EXEC_DIR -name "*.cgi" | xargs chmod 755

※nkfを利用してます。
※OSによっては動かないかも。
EXEC_DIRで任意のディレクトリを指定しといてください。

eclipseってファイルごとに改行コード指定できないんでしょうか・・・。

Perl, bash, Linux | 2008年04月8日(火) | コメント(0) | トラックバック(0)
2008年04月7日(月)

Linuxで日付・日時を変更する[Linux][date]

わざと日時を変更したいときや、ntpサーバにつなげないときに。

  1. date -s "2008/04/01 12:00:00"

(ntpサーバにつなげられる場合)時間を元にもどすには。

  1. /usr/sbin/ntpdate ntp2.tohoku.ac.jp

※ntpdateがどこにあるかは、OS等によって変わります。
※公開されたNTPサーバで上記のところじゃなくてもOK。

Linux | 2008年04月7日(月) | コメント(0) | トラックバック(0)