MySQLのシステム変数にlower_case_table_namesというものがあり、
UNIX系OSだと"0"が、Windows系だと"1"がデフォルトになってる
==================================================================
lower_case_table_names
------------------------------------------------------------------
データベース名とテーブル名をすべて小文字として
扱うか否か。
"1"ならば、すべて小文字として扱う。
"0"ならば、大文字/小文字を区別する。(←UNIX系デフォルト)
==================================================================
2013年5月1日水曜日
2013年4月25日木曜日
mysql 複数テーブルロックをかける
lock table A,B write;
注意点:
LOCK TABLES の使用時には、使用するテーブルをすべてロックし、またクエリで使用するエイリアスと同じ名前を使用する必要があります。1 つのクエリで同じテーブルを何度も指定する(エイリアスを使用して)場合は、各エイリアスに対してロックを取得しなければなりません。
注意点:
LOCK TABLES の使用時には、使用するテーブルをすべてロックし、またクエリで使用するエイリアスと同じ名前を使用する必要があります。1 つのクエリで同じテーブルを何度も指定する(エイリアスを使用して)場合は、各エイリアスに対してロックを取得しなければなりません。
2013年3月26日火曜日
mysql リモートアクセス 許可設定
1.my.ini修正
mysql> GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD';
[mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/English bind-address = 65.55.55.2 # skip-networking .... .. ....2.mysql> CREATE DATABASE foo;
mysql> GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD';
3.3306ポート空く
/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
最後ログインできるはず
$ mysql -u webadmin –h 65.55.55.2 –p
You can also use the telnet or nc command to connect to port 3306 for testing purpose:
OR
Sample outputs:
$ echo X | telnet -e X 65.55.55.2 3306
OR
$ nc -z -w1 65.55.55.2 3306
Sample outputs:
Connection to 65.55.55.2 3306 port [tcp/mysql] succeeded!
参考URL
2013年2月13日水曜日
mysql Inner Join、Left join, Right Join使い分け
a INNER JOIN b ON 結合条件
→a と b、両方にあるものを結合
a LEFT [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、a にあり b にないものは、nullで結合
a RIGHT [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、b にあり a にないものは、nullで結合
a FULL [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、a にあり b にないものは、nullで結合。b にあり a にないものは、nullで結合
→a と b、両方にあるものを結合
a LEFT [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、a にあり b にないものは、nullで結合
a RIGHT [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、b にあり a にないものは、nullで結合
a FULL [OUTER] JOIN b ON 結合条件
→a と b 両方にあるものに加え、a にあり b にないものは、nullで結合。b にあり a にないものは、nullで結合
2013年1月30日水曜日
ERROR 1 (HY000): Can't create/write to file '/tmp/user.data' (Errcode: 2)
select * from user into outfile "/tmp/user.data" fields terminated by ',';
でテーブルのデータをバックアップをしようとしたら、こんなエラーが、
ERROR 1 (HY000): Can't create/write to file '/tmp/user.data' (Errcode: 2)
調べた結果、権限の問題
でテーブルのデータをバックアップをしようとしたら、こんなエラーが、
ERROR 1 (HY000): Can't create/write to file '/tmp/user.data' (Errcode: 2)
調べた結果、権限の問題
chown root:root /tmp chmod 1777 /tmp /etc/init.d/mysqld restart
登録:
投稿 (Atom)