今天同事和我说他在本地运行得好好的程序放到linux上却提示表不存在。我一看,数据库的表名全部是小写,程序却全部用大写。之所以在本地能运行,是因为windows的文件名是不区分大小写的,Linux却严格区分呢。如果要把程序全部改一遍也比较麻烦,这个可以通过修改my.cnf 实现不区分大小写,修改办法是:
vi /etc/my.cnf
在[mysqld]下加入一行:
lower_case_table_names=1
这句话就表示不区分大小写表名。重启一下MySQL服务应该就可以了。
最近两三天发现服务器不知什么疯狂地用了几G空间,非常不解
用
du -s * | sort -nr | head
一步步查竟然发现时mysql log 文件占用了这几个G的空间。
[root@phpfans var]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Command
Your MySQL connection id is 29
Server version: 5.1.45-log Source dist
Type 'help;' or '\h' for help. Type '\
mysql> show binary logs;
+------------------+------------+
| Log_name | File_size |
+------------------+------------+
| mysql-bin.000001 | 19091 |
| mysql-bin.000002 | 716893 |
| mysql-bin.000003 | ...