Linux

mysql.h をインストールする

http://dev.mysql.com/doc/refman/4.1/ja/linux-rpm.html より ・ MySQL-devel-VERSION.i386.rpm Perl モジュールなど、その他の MySQL クライアントをコンパイルする場合に必要なライブラリとインクルードファイル。 MySQL-devel-VERSION.i386.rpm を以下か…

libmysqlclient.so をインストールする

http://dev.mysql.com/doc/refman/4.1/ja/linux-rpm.html より ・MySQL-shared-VERSION.i386.rpm このパッケージには、特定の言語とアプリケーションが MySQL を動的にロードして使用するために必要な共有ライブラリ(libmysqlclient.so*)が含まれている。 …

Linux に Capistrano をインストールしてサンプルを実行するまで

Capistrano とは? Ruby で書かれた デプロイツール。 手順 rubyインストール gemインストール railsインストール capistoranoインストール 弄ってみる 詳細 1. rubyインストール $ cd /usr/local/src $ wget ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.5.t…

yesコマンドに焦る

メンテナンスをしていて緊張しながらタイピングしていて、 ファイルの上書きをした際に yes/no を聞かれて、 yes を押したつもりが、Enter を先に押してしまい… y y y y y y y y y y . . .yが無限に標準出力されて焦った。。

MySQL の Changes を見て怖いのを見つけたのでメモ

大量にデータを削除した後にIndexファイルが壊れる http://bugs.mysql.com/bug.php?id=22384 エンジン:MyISAM 修正されたバージョン:Fixed in 4.0.28, 4.1.22, 5.0.26, 5.1.12. SELECT文のサブクエリー内で order by ?? limit 1 を指定すると mysqld が cr…

ERROR 1305 (42000): FUNCTION テーブル名.NEXTVAL does not exist

Perl + Class::DBI を使っていて、以下のエラーが発生しました。 ERROR 1305 (42000): FUNCTION テーブル名.NEXTVAL does not exist 原因は、DBアクセサ側で sequence を設定していたからでした。 例) __PACKAGE__->sequence(qw(id)); ↑を設定すると、シーケ…

MySQL5.0 が停止できないときは、kill -9 プロセスID

ちょーアドホックな対応をご紹介。 LinuxESに rpm でインストールした MySQL5.0が停止できなくなりました。 停止方法 # /etc/init.d/mysql stop エラーログを見ると以下が出力されていました。 070607 21:34:06 mysqld started 070607 21:34:06 InnoDB: Erro…

Issuing rollback() for database handle being DESTROY'd without

Apache2 + mod_perl2 + Class::DBI の環境で掲題のエラーが Apacheのログに出力されました。 Issuing rollback() for database handle being DESTROY'd without explicit disconnect() ... 検索したところ、今回の原因については以下のあたりで当たりました…

SQLite ではALTERテーブル文が限定されている

SQLiteでDBを運用していて、カラムの追加が必要になりました。 以下のSQLで他のDBMSと同じように追加することができました。 sqlite> ALTER TABLE テーブル名 ADD COLUMN カラム名 型名; このとき、カラム名を間違えてしまい、リネームしようとしたら syntax…

sqlite3インストール時にtclsqlite.cでエラー

DBD::SQLiteで作成したDBを、Unixのコマンドライン上から扱う必要があり、sqlite3クライアントをインストールしました。 このとき、make で以下のエラーが発生してつまづきました。 gcc -g -O2 -DOS_UNIX=1 -DHAVE_USLEEP=1 -DHAVE_FDATASYNC=1 -I. -I../s…

sqliteクライアントを使って、コマンドラインでSQLiteファイルを扱う

SQLiteファイルをsqliteクライアントを用いて処理する必要が出てきて調査 ・いままで DBD::SQLiteをDBIから利用して、SQLを発行してましたOT~Z ・sqliteクライアントについて DBD::SQLiteのバージョンが1.0.0になってから、SQLiteファイルが sqlite3 クライ…

perl -MCPAN -e shell でインストールに失敗する原因は

CPANからモジュールをインストールする方法でFTPで接続エラーになってました。 perl -MCPAN -e shell cpan> 原因は/etc/resolv.confのDNS設定が間違っていたためでした。 ありゃー

新規ファイルを登録する

久し振りにSubversionを触ったら、新規ファイルをレポジトリに登録する方法を思い出すのに苦労しました。 svn add なんてやって、エラーがでてギャーってなってたら思い出したよ↓ svn import ファイル/ディレクトリ URL これで子一時間も…。。ポェーン

svn: SSL is not supported

SubversionがOpenSSL付きでインストールされてないのが原因のエラーでした。ギャース。 $ svn checkout https://hogehoge/hoge- svn: SSL is not supported 面倒なので他のOpenSSL込みでインストール済みのホストで実行することにしました。

はじめてのMovableTypeインストール

Movable Type 3.2日本語版 Release-2 の提供を開始インストールで若干引っかかりながらもインストールしました。 日本語版でリリースされているので、パッチ当てたりしなくていいのは助かります。 要望としては、上手くないときのためにconfigでログ出力を指…

init.d に apacheを登録する

やること /etc/init.d/ へapacheスクリプトを配置する chkconfigでランレベルを設定する (例) apachectlを/etc/init.dへ配置する(Apache を prefix=/usr/local/apache でインストール済みとする) $ su # cp /usr/local/apache/bin/apachectl /etc/init.d/apa…

railsインストール for Ruby on Rails

perlでいうCPANに該当するgemをインストールする[前提] rubyがインストールされていること (自分の環境は1.8.2)[方法] gemを取ってくる > http://rubyforge.org/frs/?group_id=126 $ wget http://rubyforge.org/frs/download.php/5207/rubygems-0.8.11.tgz $…

MySQLで異なる文字コードを持ったデータベースを運用する方法

MySQLをrpmでインストールした状態で、utf8のデータベースとujisで運用していたXoopsを並列で稼動するために取った方法を説明します。 [環境] MySQLをrpmでインストール => latin1 データベース1 -> utf8 データベース2 -> ujis *データベース2 = xoops …

Client does not support authentication protocol requested by server

[エラー] Client does not support authentication protocol requested by server [原因] MySQL4.1ではパスワードハッシュアルゴリズムに基づく認証プロトコルが使用されているが、これは旧クライアントと互換性がない。 サーバが4.1で旧クライアントから接…

mysqldump: Error 1030: Got error 127 from storage engine when dumping

mysqldumpでバックアップを取ろうとしたら、特定テーブルでエラーが発生してそれ以上進まなくなった。 [コマンド] mysqldump -F -x -q --all-databases -u some_user -p | gzip > dumpall.gz 2>&1 [エラー内容] mysqldump: Error 1030: Got error 127 from s…

PostgreSQLのデータをMySQLに移行する方法

PostgreSQLのデータをMySQLに移行する方法。 [バージョン] PostgreSQL:8.0.3 MySQL:4.1.14 [データ移行] PostgreSQL -> MySQL ダンプ $ psql データベース名 psql> \pset format unaligned psql> \pset fieldsep '\t' psql> \pset null '\\N' # MySQL(LOAD…

mysqltest returned unexpected code 15872, it has probably crashed

MySQL4.1.14をソースからビルド/インストールで上手くいかなかった。[現象] make test でエラー [mysql@myhost mysql-4.1.14]$ make test cd mysql-test; perl mysql-test-run.pl && perl mysql-test-run.pl --ps-protocol No ndbcluster support Killing Po…

[Warning] mysql.user table is not updated to new password format; Disabling new password usage until mysql_fix_privilege_tables is run

権限テーブルのアップグレードをしなさい!という警告 [対応方法] mysqlが稼動している状態で↓ $ mysql_fix_privilege_tables --password=root_password This script updates all the mysql privilege tables to be usable by MySQL 4.0 and above. This is …

[Warning] Asked for 196608 thread stack, but got 126976

↓からダウンロードしたRPMをインストールしました。 http://download.softagency.net/MySQL/Downloads/MySQL-4.1/MySQL-server-4.1.14-0.i386.rpm MySQLを起動すると表題の警告がerr_logに出力されていました [Warningの原因?] http://oshiete1.goo.ne.jp/k…

ftpで複数ファイルをget/putする方法

ftp> mget[mput] *file* はじめて知りました。 正規表現でやる方法もあるんだけど、思い出せない。。

Linuxのディストリビューションを調べる

cat /etc/redhat-release

引数に指定されたコマンドを実行するシェル(bash)

[目的] postmasterが起動されていたらvacuum(etc)を実行したい [利用方法] cronに設定する [作成したシェル(bash)] #!/bin/sh # argument COMMAND=$1 # postmaster process PROC=`ps ax | grep postmaster` # if defined $PROC if [ -n "$PROC" ] && [ "$COM…

ログインできない /etc/shadow を編集する

作成したユーザでログインできないなぁと思ったら、/etc/shadowファイル中のパスワードが編集?(暗号化されたパスワードの先頭に"!"が付与)されてた。 修正するには、ディストリビューションがLinuxの場合/etc/shadowファイルを直接(viとかで)編集してよいと…

CVS データ移行

レポジトリを固めて持っていくだけでOKでした

PostgreSQLクライアントとDBD::Pgをインストールする方法

DBD::Pgのインストールには、PostgreSQLのライブラリが必要。 libpqだけではDBD::Pgをインストールすることはできない。 README build, test, and install Perl 5 (at least 5.6.1) build, test, and install the DBI module (at least 1.38) build, test, a…