MySQL_install のバックアップ(No.3) - アールメカブ

アールメカブ


MySQL_install のバックアップ(No.3)


DataBase

8月26日火曜9:30

Ubuntu のバージョンアップをしてからインストールしていなかった.

$ sudo apt-get install mysql-server
[sudo] password for ishida:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
Reading state information... 完了            
The following packages were automatically installed and
  are no longer required:
 libpq4
"apt-get autoremove"を使ってこれらを削除してください。 
以下の特別パッケージがインストールされます:
 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl
 libplrpc-perl mysql-client-5.0 mysql-common mysql-server-5.0
提案パッケージ:
 dbishell mysql-doc-5.0 tinyca
推奨パッケージ:
 mailx
以下のパッケージが新たにインストールされます:
 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl
 libplrpc-perl mysql-client-5.0 mysql-common mysql-server 
 mysql-server-5.0
アップグレード: 0 個、新規インストール: 9 個、削除: 0 個、保留: 0 個。
37.3MB のアーカイブを取得する必要があります。
展開後に追加で 109MB のディスク容量が消費されます。
続行しますか [Y/n]? y


..
libnet-daemon-perl (0.38-1.1) を設定しています ...
libplrpc-perl (0.2017-1.1) を設定しています ...
libdbi-perl (1.57-1) を設定しています ...
libmysqlclient15off (5.0.45-1ubuntu3.3) を設定しています ...

libdbd-mysql-perl (4.004-2) を設定しています ...
mysql-client-5.0 (5.0.45-1ubuntu3.3) を設定しています ...

mysql-server-5.0 (5.0.45-1ubuntu3.3) を設定しています ...
* Stopping MySQL database server mysqld          [ OK ] 
* Starting MySQL database server mysqld           [ OK ] 
* Checking for corrupt, not cleanly closed and upgrade needing tables.

mysql-server (5.0.45-1ubuntu3.3) を設定しています ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place
$ sudo vi /etc/mysql/my.ini
...
[client]
default-character-set=utf8
...
[mysqld]
language        = /usr/share/mysql/english 
# japaneseと変更するとコンソールで文字化けする
default-character-set = utf8
...
[mysqldump]
default-character-set = utf8
...
[mysql]
default-character-set = utf8
$ sudo /etc/init.d/mysql restart
* Stopping MySQL database server mysqld         [ OK ] 
* Starting MySQL database server mysqld          [ OK ] 
* Checking for corrupt, not cleanly closed and upgrade needing tables.

この最後のメッセージは mysql_upgrade、mysqlcheck を行っているということで,問題はない.

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.0.45-Debian_1ubuntu3.3-log Debian etch  distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SHOW VARIABLES LIKE 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       | 
| character_set_connection | utf8                       | 
| character_set_database   | utf8                       | 
| character_set_filesystem | binary                     | 
| character_set_results    | utf8                       | 
| character_set_server     | utf8                       | 
| character_set_system     | utf8                       | 
| character_sets_dir       | /usr/share/mysql/charsets/ | 
+--------------------------+----------------------------+
8 rows in set (0.00 sec) 

mysql> exit

最後にヘッダ類をインストール

$ sudo apt-get install libmysqlclient15-dev
...
未選択パッケージ libmysqlclient15-dev を選択しています。
(データベースを読み込んでいます ... 
 現在 158412 個のファイルとディレクトリがインストールされています。)
(.../libmysqlclient15-dev_5.0.45-1ubuntu3.3_i386.deb から)  
 libmysqlclient15-dev を展開しています...

$ aptitude search libmysqlclient15-dev
i   libmysqlclient15-dev            - MySQL database development files
mysql> select user,host from user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| root             | 127.0.0.1 | 
| root             | dell530s  | 
| debian-sys-maint | localhost | 
| root             | localhost | 
+------------------+-----------+
4 rows in set (0.00 sec)
mysql> CREATE DATABASE test DEFAULT CHARACTER SET utf8 
          COLLATE utf8_unicode_ci; 
mysql> GRANT ALL PRIVILEGES ON *.* TO ishida@localhost 
           IDENTIFIED BY 'mypass' WITH GRANT OPTION;
mysql> select user,host from user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| root             | 127.0.0.1 | 
| root             | dell530s  | 
| debian-sys-maint | localhost | 
| ishida           | localhost | 
| root             | localhost | 
+------------------+-----------+
5 rows in set (0.00 sec)
mysql> 
mysql> CREATE TABLE mydata  (
 xx INT2,
 yy CHAR(2)  );
mysql> 
mysql> INSERT INTO mydata VALUES(3,"yy"); 

R でチェック

> library(RMySQL)
> drv = dbDriver("MySQL")
> con = dbConnect(drv,dbname='test',user='ishida', 
          password='mypass', host='localhost')
dummy: unrecognized option `--default-character-set=utf8'
> dbGetQuery(con,'select * from mydata')
 xx yy
1  3 yy

dummy 何とかとか出るが,まあ,良いんだろう.