2011-01-01から1ヶ月間の記事一覧

DjangoでカスタムSQLを使う場合のプログラム

Djangoで自作のカスタムSQLを発行する場合の関数について、調べてみます。 DjangoにはカスタムSQLを使うモジュールが用意されています。 通常のSQLだと味がないので、MATCH AGAINSTの全文検索を図る場合を書いてみます。 groongaのテキスト検索などもこの文…

Djangoのページネートミドルウェア「django-pagination」を設定する方法

django-paginationを使って、テンプレートで簡単にページ分割を使いましょう。まずはダウンロードします。django-paginationダウンロードしたら、インストールします。 # python setup.py install running install running bdist_egg running egg_info writi…

MySQLでバイナリログの最大上限の容量(max_binlog_size)を変更する設定

MySQLのバイナリログのローテーションの最大値は、初期値は1GBです。16.1.2.4. Binary Log Options and Variables Default 1073741824 最小は4096bytes、最大は1GB(初期値)とのことです。 変更したい場合、my.cnfのmax_binlog_sizeで変更します。 バイト…

MySQLでバイナリログを定期的に削除するmy.cnfの設定(expire_logs_days)

Djangoを使っていて、たまにsyncdb(モデルをデータベースに更新させる作業)をすると、応答がなくなる時があります。 MySQLは更新等のバイナリログを残していて、リストア(復旧)しやすいように設計されています。バックアップ(スナップショット)をどこ…

Pythonの便利ライブラリLazyboyを入れてCassandraを使う方法

単一障害点がないと言われるCassandraデータベースをPythonから使う場合、 いくつか選択肢があります。Lasyboyは慣れるまで癖がありますが、使いこんでみると結構素直です。ダウンロードはここから出来ます。 digg / lazyboy CassandraをPythonから利用でき…

global name 'connection' is not definedというエラーが出る場合の対処方法

データベースに接続するときに、カスタマイズしたSQL等を発行するときに、 以下のようなエラーが出る場合があります。 global name 'connection' is not defined Django Version: 1.2.4 Exception Type: NameError Exception Value: global name 'connection…

Viで置換処理を行うコマンドについて

vim

viを使っていると置換コマンドを使う場合があります。基本的な使い方は以下のような場合です。 例えばよく使うパターンとして、ファイル内の「置換前テキスト」を「置換後テキスト」に変換する場合のコマンドは次のようになります。(ファイル全文で、確認が…

MySQLのバイナリログの保存場所を自分で設定する場合

MySQLのバイナリログは5.0以前と5.1以降で保存場所が異なります。 5.0以下ならdatadirで指定したディレクトリと同じです。 5.1以上ならPIDファイルと同じディレクトリになります。 今回は自分で設定したい場合の記述方法です。 vi /etc/my.cnf log-bin = /va…

もしもMacBook Air 11インチがあったら[ドラあり!]

日頃愛用しているはてなダイアリーで、キャンペーンをしているようです。MacBook Air 11インチ欲しい!と書きこむと参加できるとのこと。条件にある「MacBook Airや今年のブログ生活にかける、あなたの想い」を書きこみます。 MacBook Airの想い、もといステ…

Djangoでsyncdbでデータベースを作成するときに自作のSQLを実行したい場合

Djangoを使っているときに、独自のSQLを流し込みたい場合があります。 そのようなときはpython manage.py syncdbのときに 次のようなディレクトリに配置したSQLを実行してくれます。 は作成中のアプリ名です。models.py等が配置されているとします。 その配…

Django1.2でINNODBを使いたい場合のsettings.pyの設定方法

Djangoは1.2から複数のデータベースに接続することが可能になりました。データベースをMySQLのInnodbに指定して、構築してみます。まだあまり設定方法が出ていないようなので、今回確認できている例を載せておきます。 初期のsetting.py mysqlの設定をくわえ…

Djangoのsyncdbで_mysql_exceptions.OperationalError: (1049, "Unknown database 'hoge'")のエラーがでた場合の対処方法

Django1.2.4でプロジェクトを新たに作成して、MySQLを指定して、 初めてsyncdbするとき、次のようなエラーが出る場合があります。 _mysql_exceptions.OperationalError: (1049, "Unknown database 'hoge'") "Unknown database 'hoge' これはMySQLにhogeとい…

CGI版のPHPで「No input file specified.」のエラーを解決する方法

nginxでspawn-cgi経由でphp-cgiを動作させているときに No input file specified.というようなエラーが出る場合があります。これはファイルをPHPが探せないという場合に起こるエラーです。 この場合は一度、nginxの設定を見直すのが近道です。 例を見てみま…

CentOS5.5にMySQL5.1をyumでインストールする方法

# yum --enablerepo=remi,epel update mysql* Loaded plugins: downloadonly Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package mysql.x86_64 0:5.1.54-1.el5.remi set to be updated --> Processing Dependenc…

phpMyAdmin3.3をCentOS5.5にインストールする方法

事前準備として以下のインストールが必須です。 事前にインストールしておくもの mysql(mysql-libs)5.0以上 php5.3以上 php-mysql5.3(phpと同じバージョン) phpMyAdmin2でよければ、phpのバージョンは5.3未満でも構いません。 yumでphp-mysqlをインストール…

Pinax-0.7.3-bundleをCentOS5.5にインストールする方法

Pinax-0.7.3-bundleをCentOS5.5にインストールする方法をまとめました。 まぁダウンロードして、パスを通すだけなんですが、Pythonのバージョンによって若干エラーが出たりします。 ダウンロード まずはダウンロード。安定版の0.7.3を使います。現在、開発版…

バクマン。第15話「デビューと焦り」の感想と考察

バクマン。の第15話「デビューと焦り」を見たので、感想を書きたいと思います。 食い入るように土曜の午後6時にテレビの前にすわっている自分を家族は不思議そうに見ています。 かなり真剣に見ているので、家族はすごく突っ込みたい様子ですが、気にせず…

CentOS5.5にPHP5.3をインストールする方法

CentOS5.5に用意されているPHPは5.1なので、phpMyadmin等のプログラムの最新版が利用できません。よってPHPのバージョンを5.3に今回はあげます。今回epelのレポジトリが壊れていたりして、苦戦したので、後の人のために顛末を書いておきます。では早速とりか…

CentOS5.5にPHP5.3.4とphpMyAdmin3.3.9をインストールして、Nginxで動作させる方法

データベースを視覚的に把握できるphpMyAdminはとても便利です。 この最新版であるphpMyAdminの3.3.9系統をさくらのVPSにいれてみました。 インストールの条件は次のとおりです。 OS:CentOS5.5 MySQL:5.1(ソースからインストール済) PHP5.3.4(remiパッ…

Djangoからmemcacheを使う場合のエラーが発生した場合の解決方法

Djangoからmemcachedを使いたい場合に、Memcachedをインストールしているのに、エラーが発生する場合があります。例えば以下のようなエラーです。 raise InvalidCacheBackendError("Memcached cache backend requires either the 'memcache' or 'cmemcache' …

MySQLdbが使えない場合の設定方法

Djangoなどを使っていると、MySQLdbが使えない場合があります。例えば以下のようなエラーです。 raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e) django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No modu…

MySQLのインストールエラー:configure: error: No curses/termcap library found

MySQL5.1.54をさくらのVPS(CentOS5.5の初期設定)にインストールしようとしたら、 以下のエラーが出ます。 # ./configure --'as you like' checking for termcap functions library... configure: error: No curses/termcap library foundWikipediaによると…

マクドナルドのテキサスバーガー2を食べてみた感想について「2個目のハンバーガーなるか?」

2011年1月7日(金)から、Big Americaシリーズと称して、マックがキャンペーンを行ってます。 そんななか、家族がマックのテキサス2バーガーを買ってきてくれました。 前のテキサスバーガー(1)のとき、買いそこねたのを覚えていてくれたようです。…

ファイル名にハイフンを付けてしまい、引数と勘違いされた場合の解決方法

だめな例 rm -hogehoge.txt いい例 rm ./-hogehoge.txt以上のようにファイル名の前にアドレスを示す「./」を付ける。

バクマン。第14話「バトルと模写」の解説と考察

土曜日NHKを見ていると、バクマン。という漫画家を目指す少年たちのアニメがやっています。まず今までのあらすじを追って、第14話の解説をしていきます。いましばしお付き合いのほどを。。。 あらすじ あらすじはWikipediaではこうなっています。 この後は…

Python2.6からsqlite3が読み込まれないエラーの解決方法

ソースからインストールしたpython2.6で、Djangoのsyncdb等を使おうとすると、sqlite3が読み込めないとエラーが発生します。 % python manage.py syncdb raise ImproperlyConfigured, "Error loading %s module: %s" % (module, exc) django.core.exceptions…

groongaをCentOS5.5のMySQL5.5にインストールする

rpmレポジトリを更新します。 # rpm -ivh http://packages.groonga.org/centos/groonga-repository-1.0.0-0.noarch.rpm # yum update追加されたものを見てみましょう。 # yum list | grep MySQL MySQL-client.x86_64 5.5.8-1.rhel5 groonga MySQL-client-com…

さくらのVPSで使っているLinuxカーネルとCentOSのバージョンを調べるコマンド

使用中のLinuxカーネルのバージョンを調べるコマンド # cat /proc/version Linux version 2.6.18-194.26.1.el5 (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Tue Nov 9 12:54:20 EST 2010 使用中のCentOSを調…

PythonでUnicodeEncodeError: 'ascii' codecがでた場合の対処方法

Pythonはデフォルトのエンコーディングを指定しないと、UnicodeEncodeErrorが発生する場合があります。今回はその解決方法について記載します。4つ環境を用意してみました。 エラー例 # python Python 2.6.6 (r266:84292, Jan 3 2011, 14:20:44) [GCC 4.1.2…

pythonからmecabを使いたい場合の解決方法

pythonからmecabを使いたい場合はpython-mecabをインストールします。途中、依存関係でエラーがでたらpython-develとかをyumでインストールしてみてください。 # wget http://sourceforge.net/projects/mecab/files/mecab-python/0.98/mecab-python-0.98.tar…