zoukankan      html  css  js  c++  java
  • Mysql 使用经验 2013

    Mysql配置文件:

       Linux下,安装mysql后的默认配置文件,一般非常简单; 并没有具体的规定mysql启动时各个参数的设置。 比如[mysqld],[client],[mysqldump]这些项之下的各个参数。 a. Mysql入门最先涉及到的,恐怕就是[mysqld]下的字符集设置。b. Msyql默认是latin1字符集,此字符集会将中文GBK一类非欧洲编码字符存储为乱码。c. 对于mysql运行的资源预分配没有设定,如果buffer-size, query-cache-size等参数没有设置,则启动的时候mysql的性能就不会是自己所期望的,在安装文件中my-small.cnf, my-huge.cnf这些都可作为参考设置my.cnf; d. mysql启动运行时候的日志log、错误日志log-error、query-log等,在没有指定时也不会有输出。d. 如果更改配置文件my.cnf,则在改动innodb-log-file-size时,在再次从新启动时会启动失败,原因是innodb会做log file size 的检查,不一样的话会报错。 详细的分析见帖子:http://serverfault.com/questions/104014/innodb-error-log-file-ib-logfile0-is-of-different-size

    Mysql两种引擎(类型)

      Innodb, Myisam两种表类型,在小规模百万级别是没有什么大的区别,可是如果达到亿级别,两者在select、insert上的区别就展现出来。因此根据自己实际应用场景,选择好驱动引擎非常重要。 亿级别大表,频繁的执行select ,而且事务性不强,myisam优势明显; 如果执行insert、update比较频繁则是innodb更有优势。 因为大部分的互联网应用场景下读写操作相比,读操作更普遍,所以myisam更有优势,写操作的弱势也可通过分表存储、缓存更新的策略改进。

    Some tips:

           1. Mysql的配置文件在设定之后,创建的数据库会跟着受到影响,因此安装软件之初,关键信息,比如数据文件目录、innodb数据文件的顺序这些信息都应该设置好;否则在后继的改动配置时,很容易遇到错误。

           2. 如果遇到mysql错误情况,查看Mysql启动和运行日志,而非只是看查询的报错,才能诊断出错误的所在,对症下药。因为很多错误都有可能导致同样查询出错。这就要求配置文件中,规定好日志的输出。

           3. 不论是innodb或者mysiam的日志文件和数据文件,在遇到为了解决异常、错误需要删除时,都应该备份。否则很有可能带来巨大的麻烦和损失。

           4. foreign key在删除的时候,必须知道对应constraint的名字,可是在自己的创建表语句中可能没有指定,这是就需要使用命令 show create table + 表名来查询。

          5. show create table 命令输出给定表创建所需的命令,并且可以直接添加到sql文件中,供source 命令使用; 也可通过设置session参数,使输出可以直接在终端执行。

  • 相关阅读:
    【彩彩只能变身队】(迟到的)团队介绍
    【彩彩只能变身队】用户需求分析(二)—— 调查结果
    【彩彩只能变身队】用户需求分析(一)—— 调查问卷
    C语言I博客作业04
    C语言I博客作业06
    c语言1作业07
    C语言I博客作业03
    C语言I博客作业02
    C语言I博客作业05
    【OpenGL编程指南】之投影和视口变换
  • 原文地址:https://www.cnblogs.com/operaculus/p/3039291.html
Copyright © 2011-2022 走看看