Open Source WEB

  1. ごあいさつ
  2. はじめに (2005/2/1)
  3. 準備
    1. バイナリのインストール
      1. バイナリの取得 (2005/2/4)
      2. バイナリのインストール (2005/2/8)
      3. バイナリの動作確認 (2005/2/10)
      4. バイナリの文字コードの確認 (2005/2/15)
      5. バイナリでのシャットダウン (2005/2/17)
    2. ソースからのインストール
      1. ソースの取得 (2005/2/21)
      2. コンパイルとインストール (2005/2/24)
      3. ソース版の動作確認 (2005/3/1)
      4. コンパイルオプション (2005/3/3)
      5. configureオプション (2005/3/7)
      6. 再コンパイルして動作確認 (2005/3/11)
    3. MySQL 5.0.4のリリース
      1. 5.0.4のインストールと動作確認 (2005/5/6)
      2. 5.0の新機能 (2005/5/9)
  4. 起動と設定
    1. mysql起動オプション
      1. mysqlクライアントの起動オプション (2005/3/15)
      2. my.cnfを使った起動オプション指定 (2005/3/18)
      3. .my.cnfを使ったユーザ別オプション指定 (2005/3/22)
    2. 起動後の変更
      1. SET文によるキャラクタセットの変更 (2005/3/25)
      2. 接続キャラクタセットの変更 (2005/3/29)
    3. キャラクタ端末での表示
      1. 複数キャラクタセット対応端末gnome-terminal (2005/4/1)
      2. gnome-terminalのCharacter Encodingを変更すると (2005/4/5)
  5. 文字列処理
    1. キャラクタセット
      1. キャラクタセットとキャラクタエンコーディング (2005/4/8)
      2. 使用可能なキャラクタセット (2005/4/12)
    2. キャラクタコード変換支援コマンド
      1. Linuxの16進ダンプツール(od,xxd) (2005/4/15)
      2. キャラクタコード変換ツール(nkf, iconv, kcc) (2005/4/26)
    3. 16進表示関連の文字列処理
      1. HEX()で文字列を16進文字列に変換 (2005/4/28)
      2. HEX()でキャラクタセットの調査 (その1) (2005/5/2)
      3. 16進数表記から文字列を作る (2005/5/6)
      4. バイト列のキャラクタセット指定をするintroducer (2005/5/11)
      5. 普通の文字列にもintroducerを付加できる (2005/5/13)
    4. キャラクタセット変換
      1. CHARSET()で文字列のキャラクタセットを得る (2005/5/16)
      2. CHARSET()でさらなるキャラクタセットの調査 (2005/5/19)
      3. CONVERT()でキャラクタセットの変換をする (2005/5/24)
      4. CAST()でもキャラクタセットの変換ができる (2005/5/27)
      5. UNHEX()で16進数表記から文字列を作る (2005/7/1)
    5. 文字化け
      1. バックスラッシュ(\,5C)が文字化けする (2005/5/31)
      2. バックスラッシュ(\,5C)が文字化けする(続編) (2005/6/2)
      3. バックスラッシュ(\,5C)が文字化けする(続々編) (2005/6/7)
      4. 全角の〜が半角の~に文字化けする (2005/6/10)
      5. 全角の〜が半角の~に文字化けする(続編) (2005/6/14)
    6. 新キャラクタセット(cp932,eucjpms)
      1. 新キャラクタセットcp932,eucjpmsとは何か (2005/6/17)
      2. バックスラッシュ(?,5C)の文字化けは直ったか? (2005/6/22)
      3. 全角のバックスラッシュ(\) はどう変換されるか (2005/6/24)
      4. 〜が~に文字化けするのは直ったか (2005/6/28)
    7. 文字列長
      1. LENGTH()で文字列長を求める (2005/7/5)
      2. CHARACTER_LENGTH()で文字列長を求める (2005/7/7)
    8. 文字幅
      1. テーブルの縦線が揃わない (2005/7/12)
      2. mysqlのオプション指定でテーブルの縦線を揃える (2005/7/15)
  6. 文字列操作関数
    1. CONCAT
      1. CONCAT()で文字列をつなぐ (2006/2/26)
      2. キャラクタセットがbinaryの文字列のCONCATは (2006/3/2)
      3. CONVERT()によるbinary文字列のCONCATはOK (2006/3/6)
      4. _binaryによるbinary文字列のCONCATが変だ (2006/3/9)
      5. eucjpms,cp932,utf8混在のCONCATは (2006/3/14)
      6. eucjpms,cp932,utf8三種混在のCONCATは (2006/3/20)
      7. latin1キャラクタセット文字列とのCONCATは (2006/3/27)
    2. REPLACE
      1. REPLACE()で文字列の一部を置換する (2006/4/3)
      2. キャラクタセットがbinaryの文字列のREPLACEは (2006/4/10)
      3. REPLACE()でキャラクタセットはいつ変換されるか (2006/4/13)
      4. eucjpms,cp932,utf8混在のREPLACEは (2006/5/1)
  7. ソースコードにチャレンジ
    1. ソースコードを読もう
      1. mysql.ccのテーブル表示部分を読んでみよう (2005/7/19)
      2. 文字幅を求める関数へのポインタ(*numcells)() (2005/7/22)
      3. 文字幅を求める関数my_numcells_eucjp() (2005/7/26)
      4. charset_infoはいつ変更されるか (2005/7/28)
    2. デバッガ(gdb)でプログラムの動きを調べよう
      1. デバッグオプション付でコンパイル (2005/8/2)
      2. kinput2からの入力を可能にするconfigureオプション (2005/8/4)
      3. gdbからmysqlクライアントを起動してみよう (2005/8/9)
      4. print_table_data()にブレークポイントを設定 (2005/8/11)
      5. SET NAMESで変更してもcharset_infoはlatin1のままだ (2005/8/15)
      6. オプション指定はcharset_infoに反映される (2005/8/21)
    3. プログラムを変更してみよう
      1. フィールド毎にキャラクタセットを反映させるには (2005/8/23)
      2. フィールド毎にキャラクタセットを反映できた (2005/8/25)
      3. タイトル部分も揃えてしまおう (2005/8/30)
      4. 5.1でmysqlのプロトコル変更により解決か (2006/1/13)
  8. メタデータ(識別子)に日本語を利用
    1. データベース名
      1. データベースの作成、確認、削除 (2005/9/01)
      2. データベース名に漢字を使ってみよう (2005/9/06)
      3. cp932だとデータベース名の漢字が変になる (2005/9/08)
      4. utf8では漢字のデータベース名はもっと変になる (2005/9/13)
      5. SHOW CREATE DATABASEの出力中の`は何だろう (2005/9/15)
      6. マニュアルでバッククォート(`)について調べよう (2005/9/20)
      7. データベース名はバッククォート(`)で囲むのが正式 (2005/9/22)
      8. 色々なキャラクタセットのデータベース名を試してみよう (2005/9/27)
      9. データベースはディレクトリで実現されている (2005/9/30)
      10. データベース名に漢字が使えるみたい (2005/10/4)
    2. テーブル名
      1. テーブルの作成、確認、削除 (2005/10/6)
      2. テーブルはファイルで実現されている (2005/10/11)
      3. テーブルがInnoDBの場合はどうなるか (2005/10/13)
      4. InnoDBのデータファイルは何処にあるのか (2005/10/18)
      5. InnoDBでテーブル毎にデータファイルを作る方法 (2005/10/20)
      6. テーブルがHEAPの場合はどうなるか (2005/10/25)
      7. テーブルがBDBの場合はどうなるか (2005/10/27)
      8. テーブルがMERGEの場合はどうなるか (2005/10/31)
      9. MERGEテーブルの定義方法 (2005/11/4)
      10. 一時テーブルの場合はどうなるか (2005/11/8)
    3. カラム名
      1. カラム名にはバイト数制限があるだけ (2005/11/10)
      2. メタデータの前後の空白は要注意 (2005/11/14)
      3. シフトJIS系のメタデータは要注意 (2005/11/17)
      4. SET NAMES はメタデータでは無効 (2006/1/12)
    4. ビュー
      1. ビューの作成 (2005/11/22)
      2. ビューの確認 (2005/11/26)
      3. ビューのカラム名に漢字を使った場合 (2005/11/29)
      4. ビューの変更 (2005/12/1)
      5. ビューはどのように実現されているか (2005/12/6)
    5. エイリアス
      1. カラムにエイリアスをつける (2005/12/8)
      2. エイリアスのクォートは何でも良いのかな (2005/12/13)
      3. 式中の要素に漢字エイリアスを使うとどうなるか (2005/12/15 )
      4. 式中の要素に漢字エイリアスを使うとどうなるか(続編) (2005/12/20)
  9. ストアドプロシージャとストアドファンクション
    1. ストアドファンクション
      1. ファンクションを作ってみよう (2005/12/27)
      2. ファンクションを作ることができた (2006/1/4)
      3. 日本語文字列を返すファンクションを作ってみよう (2006/1/10)
      4. 日本語文字列を返すにはどうすれば良いのか (2006/1/16)
      5. 戻り値のキャラクタセットを指定せねば (2006/1/19)
      6. 戻り値のキャラクタセットをbinaryにして誤魔化した (2006/1/23)
    2. パラメータ
      1. 文字列パラメータを与えてみよう (2006/1/26)
      2. 文字列パラメータのキャラクタセットは何になっているか (2006/1/30)
      3. 文字列パラメータのキャラクタセットを指定してみよう (2006/2/2)
      4. 文字列パラメータの中味を調べてみよう (2006/2/6)
      5. ファンクションの本体をBEGIN〜ENDで括ってみよう (2006/2/10)
      6. ファンクションの本体中での情况を覗き見るには (2006/2/14)
      7. character_set_connectionを変えたときのファンクションパラメーは (2006/2/16)
      8. 文字列パラメータのキャラクタセットをbinaryにしてみよう (2006/2/20)

ユニコードのサイトを活用しよう

日本語処理関連書籍


TIPS (ゴミ知識)


フィードバック下さい!

Name:
Comment:
冨士: (Thu Apr 21 10:41:30 2005 )
はじめまして。
仕事でMySQL4.0を使っているのですが、文字化けの問題とか、対応の問題とか
よく分からないことが多かったし、今動いているんだからと4.1に上げるのを躊躇していました。
拝見させていただいて疑問が氷解しました。すばらしい出来で感動しました。
最後にお願いというとおこがましいのですが、各ページに、前の項目に戻る
リンクもあるとより見やすいのかなと思いました。
fuji: (Thu Apr 21 13:59:13 2005 )
そんなに役に立ちましたか。光栄です。

前に戻るリンクも欲しいとのこと、考えてみます。
kx: (Fri Jul 15 11:34:06 2005 )
初めまして。
MySQLのMLでご紹介されてたのを拝見してやってきました。
日本語に関する情報が少ない中非常に有益な情報がたくさんで驚いています。
ひとつだけ、各記事の内容がどのVersionのMySQLをターゲットに書かれているか、
またはどのVersion以上のMySQLなら有効かも併記して頂けるとより良いコンテンツになるのではないかと思いました。
それでは失礼致します。
fuji: (Fri Jul 22 20:44:06 2005 )
ターゲットは 5.0.xですが、xの部分はどんどん変化しています。
今日現在は、5.0.7で書いていますが、5.0.9で大きな問題がないようだと、
8月になったら、5.0.9にしようかと思っています。

4.1でも大丈夫なこともあり、大丈夫でないこともあるので、それもあった
方が良いでしょうが、このところ4.1をさっぱり使っていないんです。
4.0以前は、utf8による国際化対応ではないので、ここに書いていることの
多くがうまく動かないと思われます。
東風: (Fri Feb 10 21:08:19 2006 )
一気に熱読させて頂きました。本当にすばらしいサイトですね。一種興奮に近いものがありました。
現在3系を使っているのですが、セキュリティー問題でサーバをRed Hat Enterpriseに乗り換えるのでDBをどうするか本当に悩んでおりました。
(本文を読んだ方へ:MySQLは4.0と4.1は同じ4系でもWindows98と2000くらい違うバージョンです。特に文字回りはutf8の強制文字変換機能という
究極のおせっかい機能で日本語ユーザにはつらい時代が続きました。詳しくは↑)

ここを読んで5.0系を使ってみようと思います(本当にありがとうございます)
また、出すぎたお願いをするのであれば、節目節目でアップグレードについての指南をお願い出来ると大変に助かります
2月にMySQLの日本法人が出来たりと、今後大きく日本語での使用環境が改善されると思われます根本的な作動理論も変更・改善されるでしょう
その時、今回で言うとskip-character-set-client-handshake (殆どの人が使うと思います)を外したり、外さなかったり、、
また、自分はPerl環境で使用しているのですが、サーバが苦手な人も多いと思います
サルでも出来る(インストール/アップグレード)があると良いかと思いました

感謝の意と尊敬の念を込めて
mari: (Mon Apr 17 18:17:48 2006 )
はじめまして。
MySQLを仕事で使っているのですが、日本語が文字化けしていて、どう対応すればいいのかがわかりませんでした。このサイトを見て本当に助かりました。すごく分かりやすく、どうすればいいのかなど、詳しく書かれていて本当にいいサイトを見つけたなと思っています。今後も、期待しています。(MySQLと連携して動作するプログラミング言語PHPなど、DBと言語で発生する文字化けの対応に関連するものもほしいなと思いました。図々しくてすみません。)

このサイトは、 IPA の「平成15年度オープンソフトウエア活用基盤整備事業」 の委託事業として開発されたKahuaで試験的に運用しております。

Copyright (c) 2004-2007 株式会社タイムインターメディア About Us