1. 概要
EC-CUBE は PostgreSQL を使えるそうなので・・・。
とはいえ、10.0 は実績がないようなのがほんの少し不安なのですが・・・。
ecuser という PostgreSQL ユーザを作成し、eccube というデータベースを作成します。
2. ユーザ作成
root ユーザから postgres ユーザになって
su
Password: ← root ユーザのパスワードを入力
su postgres
createuser --createdb --pwprompt ecuser
新しいロールのためのパスワード: ← パスワードを入力
もう一度入力してください: ← パスワードを再度入力
createuser のオプションは、以下の通りです。
--createdb データベース作成の権限を有する
--pwprompt パスワードを設定する
3. データベース作成
前項の状態のまま
createdb --owner=ecuser eccube
って、これでどうかと思いましたら・・・。
どうも PostgreSQL 10 ではまだエラーとなるようで・・・。
4. MySQL でやり直し
同じユーザ名・データベース名で・・・。
XOOPS のときに痛い目を見ているのでまず、文字コードを
mysql> show variables like "chara%";
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.05 sec)
mysql>
あかん。
/usr/local/etc/mysql/my.cnf
を編集して
[mysqld] ← のセクション内に
・・・
character-set-server = utf8 ← この1行を追加しておきます。
service mysql-server restart
今度は大丈夫
mysql> show variables like "chara%";
+--------------------------+----------------------------------+
| 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/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.05 sec)
mysql>
ではあらためてユーザとデータベースを作成。
> mysql -u root -p
Enter password: ← root パスワードを入力
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.22-log Source distribution
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database eccube;
Query OK, 1 row affected (0.03 sec)
mysql> GRANT ALL PRIVILEGES ON eccube.* to ecuser@localhost IDENTIFIED BY 'パスワード';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> Bye Ctrl+D で終了