Linux下MySql5.1注意的几个问题

来源:互联网 发布:linux运维工程师简历 编辑:程序博客网 时间:2024/05/21 07:15

第一次使用MySql数据库,又是Linux系统,开发和测试过程中遇到一些问题,总结下来和大家分享:

1、Linux下的MySql严格区分大小写,默认是小写,我们写Sql语句的时候会使用大写,此时将无法执行。

      解决方法如下:(1)用root登录,修改/etc/my.cnf 文件;

                                   (2)在[mysqld]下加入一行:lower_case_table_names=1;

                                   (3)重启数据库    /etc/inint.d/mysqld restart。

 

2、需要插入中文时,设置MySql字符集:

(1)修改/etc/my.cnf 文件
(2)在[mysqld] 和 [client] 段加入default-character-set=utf8,如果没有[client] 段就手工加入该段
(3)修改已存在的数据库和数据库表
   ALTER DATABASE `数据库` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
   ALTER TABLE `数据表` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

注意:如果数据库和数据库表已存在,除了2(3)方法外,还可以直接使用客户端工具修改数据库属性中的字符集,此时注意需要同时修改数据库字符集属性、

           需要插入中文的表的字符集属性、表中需要插入中文的字段的字符集属性。

           我用的客户端工具是Navicat for MySql,起初只改了数据库和表的字符集,仍然无法插入汉字,后来发现还需要修改插入中文的字段。

(4)重启数据库

(5)修改后可以验证修改结果,使用 mysql> show variables like 'char%';  命令,查询结果如下(以utf8为例):
+--------------------------+------------------------------------------+
| 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 | /opt/mysql-cluster/share/mysql/charsets/ |
+--------------------------+------------------------------------------+
8 rows in set (0.00 sec)

可以看出都已经更正为utf8了,这样新建立的数据库缺省就是UTF8编码了。

 

3、如果测试性能需要修改mySql的最大连接数,默认是100。

     打开mySql配置文件my.cnf,查找max_connections=100,修改该值,重启数据库即可。

 

原创粉丝点击