カテゴリー「DataBase」の3件の記事

2011年2月 4日 (金)

MySQL 英字の大文字・小文字を区別する

MySQL では、char、varcharカラムに対して
検索条件(where)やソート(order by)時に大文字小文字を区別しません。

ユーザID等のカラムで 「A00000001」 と 「a00000001」 が同じだと
とみなされると困ったものです。

これを区別させたい場合、対象のカラムに 「binary」 属性を設定する必要があります。

↓phpMyAdminで確認した場合

Mysql1_4 

正:utf8_bin

誤:utf8_general_ci

上記の設定を変更する場合、「操作」の筆アイコンをクリックし
「属性」に「BINARY」を指定します。

Mysql2

変更後は「照合順序」の値が変わっています

Mysql3

2010年11月19日 (金)

phpMyAdmin インストール

PHPでMySQLの管理が行えるツールのインストール
  (PHPの設定を完了している必要があります)

1.phpMyAdminのダウンロード

  サイト:http://www.phpmyadmin.net/home_page/index.php

  →ページ上の「Downloads」を選択
  →「phpMyAdmin-x.x.x.x-all-languages.zip」を選択
  →任意の場所に保存する。

2.phpMyAdminのインストール

  →ダウンロードしたファイルを解凍する
  →解凍フォルダの名称が長いので「phpMyAdmin」に変更(※1)
  →解凍フォルダ「phpMyAdmin」をapacheの「htdocs」フォルダに移動する

※1 名称が phpMyAdmin 等、わかりやすい名称の場合、
    不正アクセスの被害を受ける場合があります。
    フォルダ名は第3者が想像できないものに変更してください。

3.phpMyAdminの動作確認

  http://localhost/phpMyAdmin/index.php

  上記サイトにアクセスし、ログイン画面が表示されれば設定完了

4.設定ファイル作成

  「phpMyAdmin」フォルダ直下の
  「config.sample.inc.php」を「config.inc.php」という名前でコピー

5.設定ファイルの変更

  「config.inc.php」ファイルをテキストエディタで開く

  →「$cfg['blowfish_secret'] = ''; …」の記述を変更する
     例:$cfg['blowfish_secret'] = 'passphrase';
    ※ログイン時の「設定ファイルが秘密のパスフレーズ …」の表示が消えます

  →「$cfg['PmaNoRelation_DisableWarning'] = true;」の記述を追加する
    ※ログイン時の「リンクテーブルを処理するための追加機能が…」の表示が消えます

  →ファイルを保存する

※phpMyAdmin 実行時に下記のエラー内容が表示された場合、
  設定を見直してみてください

 
「エラーが出たためセッションを開始できませんでした。
  
PHP やウェブサーバのログファイルに出ているエラーを確認して、
  PHP を正しく設定してください。」

 1.php.ini の設定内容確認
   → 「session.save_path」 等、設定先フォルダに書き込める権限があるか?

 2.Apache や PHP の実行権限確認
   → Apache の実行ファイル httpd.exe のプロパティーより「互換性」タブを選択
   → 特権レベルより「管理者としてこのプログラムを実行する」をチェック
   → PHP の実行ファイル php.exe についても同様に確認する

MySQLインストール

1.MySQLのダウンロード

  サイト:http://www.mysql.com/

  →ページ上の「Downloads」タブを選択
  →「MySQL Community Server」を選択
  →Platformを選択する
 →ダウンロードするファイルの「Download」を選択
 →「No thanks, just take me to the downloads!」を選択
  →一番近い国を選択して任意の場所に保存する。

2.MySQLのインストール

  →ダウンロードしたファイルを実行する
  →「Next」ボタンを選択
  →使用条件に同意して、「Next」ボタンを選択
  →デフォルトインストールの場合「Typical」を選択する
  →「Install」をクリックする
  →「Next」ボタンを選択
    (何度か選択する。サインアップ登録を聞かれた場合「Skip Sign-Up」を選択)
  →インストール終了後は「Finish」をクリックする

3.MySQLの設定

  ※インストール完了時にチェックをつけている場合は設定画面が起動する

 →「Next」ボタンを選択
  →「Detailed Configration」を選択し、「Next」ボタンを選択
  →「Developer Machine」を選択し、「NEXT」ボタンを選択
    ※開発用や個人環境ならこの設定で構わない

  →「Multifunctional Database 」を選択し、「NEXT」ボタンを選択
    ※MySQLにはInnoDBとMyISAMの2つのデータベースエンジンが用意されているが、
      今回は両方使用できる「Multifunctional Database」を選択。

  →データ格納先はデフォルトのまま、「NEXT」ボタンを選択
    ※データ格納先を選択を変更したい場合は変更する

  →「Decision Support(DSS)/OLAP」を選択し、「NEXT」ボタンを選択
    ※同時接続数の設定
      Decision Support(DSS)/OLAP      :20コネクション
      Online Transaction Processing(OLTP)」 :500セクション
      Manual Setting               :数値で設定

  →TCP接続、ポート番号はデフォルトのまま、「NEXT」ボタンを選択
    ※ポート番号が被る場合は変更する

  →文字コードを指定して、「NEXT」ボタンを選択
    ※今回はUTF-8を使用するため「Best Support For Multilingualism」を選択
      Standard Character Set                          :Latin 1
      Best Support For Multilingualism                :UTF-8
      Manual Selected Default Character Set/ Collation:選択した値

  →サービスの登録と、パスを登録を選択して、「NEXT」ボタンを選択
    ※今回は両方を選択
      Install As Windows Service           :MySQLをWindowsのサービスとして登録する
      Include Bin Directory in Windows PATH:PATHの設定を行う

  →管理者(root)アカウントのパスワードを登録して、「NEXT」ボタンを選択
    ※Anonymous Accountは選択しない

  →最終確認画面が表示され、問題が無ければ「Execute」ボタンを選択する

  →「Finish」ボタンを選択する

4.MySQL用文字コードの設定

インストールフォルダに存在する 「my.ini」ファイルの内容を変更する
 (例:C:\Program Files\MySQL\MySQL Server 5.5 直下 の my.ini ファイル)

  →Shift-JIS の設定例

 :
[mysql]
default-character-set=cp932
 :
[mysqldump]
default-character-set=cp932
 :
[mysqld]
default-character-set=cp932

  →UTF-8 の設定例

 :
[mysql]
default-character-set=utf8
 :
[mysqldump]
default-character-set=utf8
 :
[mysqld]
default-character-set=utf8

5.MySQLの動作確認

  →コマンドプロンプトで「mysql -u root -p」を実行する

  →パスワードを求められるのでインストール時の管理者パスワードを入力する

  →ログインを確認したら「quit」 コマンドでログアウトする。