• PostgreSQL 8.1.3 インストール

    ふとした思い付きでPostgreSQLを導入する。
    使ってる環境がFedora Core 3なのだが、FC公式リポジトリには7.xしかない。PostgreSQL本家に8.1.3のrpmがあったもののarchが686で、自サーバでは動かず。unameでi686って出てるんだけどな~。EDENだから?

    導入

    • PostgreSQL: FTP Browser(Top → source → v8.1.3)からtar玉をダウンロードする。今回使ったのは、postgresql-8.1.3.tar.gz。
    • ダウンロードしたアーカイブを適当な場所において展開。
    • いつものconfigure → make → make install。今回は↓で。
      ./configure --enable-thread-safety --without-docdir
    • tar玉に同梱されている「INSTALL」のShort Version風で、さくっと確認。
      # adduser postgres
      # mkdir ~postgres/data
      # chown postgres:postgres ~postgres/data
      # su - postgres
      (profile中のPATH設定に/usr/local/pgsql/bin/を追加)
      % initdb -D ~/data
      % pg_ctl start -D ~/data
      % createdb test
      % psql test
      test=# select * from pg_catalog.pg_tables;
      ~テーブルの一覧~

    設定

    • デフォルトの状態では、他ホストからの接続を受け付けないので、許可を追加する。
    • data/pg_hba.confに許可IPを追加。
      host all all 192.168.1.0/24 trust
    • data/postgresql.confにLISTENアドレスを設定。
      listen_addresses = '*'
    • iptablesで許可するのを忘れがち。(デフォルトの場合)tcpポート5432を許可。
      FC3の場合、/etc/sysconfig/iptablesを編集して
      # /etc/init.d/iptables restart
    • ログがstderrに出るのは好まないのでsyslogに変更
      log_destination = 'syslog'
    • ついでに接続関係もログるように変更
      log_connections = on
      log_disconnections = on
      log_duration = on
    • postmasterを再起動。
  • 時刻がずれすぎると

    最近、Typekeyによるサインインができないのはなぜだろう?と思っていたら > The TypeKey signature is out of date (-632 seconds old). Ensure that your server's clock is correct ということだった。ntp動かしてなかったっけ・・・。時刻を補正してサインインしたらOK。
  • MTをアップグレード

    MTをアップグレードした。DBをSQLiteに変えたら気持ち高速になったような気がしなくもない。 カスタマイズしたテンプレートがまたデフォルトに戻ってしまった。当然といえば当然だがまたカスタマイズするのも面倒な・・・。

    webページのデザインについては、liquidレイアウト主義なので、デフォルトデザインの「px指定」しまくりにはやるせないものを感じる。

  • sqliteのtar玉からRPMを作る

    specをちびっと触ったのでメモ。
    • SQLite home pageからダウンロードしたsqlite-3.3.4.tar.gzを任意の場所に展開する。
    • sqlite-3.3.4.tar.gzを/usr/src/redhat/SOURCE/にコピーする(コピー先は環境により変わるのかな??)
    • specをビルドする過程でtclshが必要だったので、tclもインストールした。
    • 展開したディレクトリにある「spec.template」を編集して「rpmbuild -bb spec.template」
    [aaa@bbb sqlite-3.3.4]# diff -u /usr/src/redhat/BUILD/sqlite-3.3.4/spec.template spec.template
    --- /usr/src/redhat/BUILD/sqlite-3.3.4/spec.template    2005-12-20 02:30:55.000000000 +0900
    +++ spec.template       2006-03-14 23:16:30.000000000 +0900
    @@ -1,5 +1,5 @@
     %define name sqlite
    -%define version SQLITE_VERSION
    +%define version 3.3.4
     %define release 1
    
     Name: %{name}
    @@ -30,7 +30,7 @@
     to develop programs that use the sqlite database library.
    
     %prep
    -%setup -q -n %{name}
    +%setup -q -n %{name}-%{version}
    
     %build
     CFLAGS="%optflags -DNDEBUG=1" CXXFLAGS="%optflags -DNDEBUG=1" ./configure --prefix=%{_prefix}
    
    
  • Eclipseのハマリねた

    • WSDLのバリデータなどが検証の過程でインターネットにアクセスするのでプロクシ設定が必要な環境においては、ウィンドウ→設定→インターネット→プロクシ設定で設定しておかなければならない。
    • これを忘れると赤い×がつく。つい、必要なjarが参照できていないのでは?という方向に向かいがち。