Search on the blog

2011年5月20日金曜日

サーバー奮闘記(13)

ひさびさの更新。
MySQLの設定をしてみた。
  1. ユーザーパスワードの変更
  2. 一般ユーザーの作成
  3. 文字コードの設定
1. ユーザーパスワードの変更
rootのパスワードを変えたくなったので変えた。

まず以下でログイン。(注意: -pの後はスペースを入れないこと!!)
mysql -u root -ppassword
>SET PASSWORD FOR root@localhost=PASSWORD('new_password');
でパスワード変更。

せっかくなので適当にDBをつくった。
>create database new_database_name;
>show databases;

2. 一般ユーザーの作成
>grant all privileges on new_database_name.* to usr_name identified by 'password';
で新しく作ったデータベースに対してすべての権限を持つユーザーを作成。
アプリケーション毎にユーザーを分ける予定。

3. 文字コードの設定
>status
で現在の文字コードを確認。Latinなんちゃらになってる。
また、以下の構文でスキーマやテーブルの文字コードを調べられるようです。
>show create database database_name;
>show create table table_name \G;

文字コードをUTF-8にするため以下ファイルをいじります。
/etc/my.cnf
以下のように書きます。
[client]
default-character-set=utf8

[mysqld]
default-character-set = utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8

で、再起動。
> /usr/bin/mysqladmin shutdown -u root -ppassword
> /usr/bin/mysqld_safe --user=mysql &

とやってみましたが、既存のスキーマ、テーブルは文字コードがLatinのままでした。。
一旦スキーマ毎消して、文字コードを指定してスキーマを作りました。
>create database database_name default character set utf8;
でOK。日本語が使えるようになりました。

参考ページ:


サーバー奮闘記一覧はこちらから。ここに書いていることを順にやれば、いろいろできるようになるかも!?

0 件のコメント:

コメントを投稿