1、Windows下MySQL的配置文件是my.ini,一般会在安装目录的根目录。

2、Linux下MySQL的配置文件是my.cnf,一般会放在/etc/my.cnf,/etc/mysql/my.cnf

把MySql下面的配置文件my.cnf详细的做一个说明(Linux环境) 查看版本号的sql命令是:select version();

首先,先找到my.cnf的路径,如果安装的时候没有做什么修改,那么它的默认路径是在“/etc/my.cnf”这个地方。如果找不到也没有关系,我们可以用两步找到它;

第一步:首先找到mysqld的路径:

命令:which mysqld

出来的路径就是mysqld 的路径;

第二步:敲命令:/usr/local/mysql/bin/mysqld --verbose --help |grep -A 1 'Default options'

在这里就可以看到my.cnf的路径啦!

下面我们打开my.cnf看看里面都有些什么配置:

part 1

port = 3306:指定了Mysql开放的端口;basedir = /usr/local/mysql:指定Mysql安装的绝对路径;datadir = /data/mysql_db_data:指定Mysql数据存放的绝对路径;socket = /tmp/mysql.sock:套接字文件

这里要注意,有时候重启mysql会提示/tmp/mysql.sock不存在,此时通常会由于两种情况导致,解决方法:

路径不对,此时找一下该文件的路径,然后配置指向正确的路径即可;误删除了,此时需重启mysql服务,重启完后会在datadir目录下生成一个该文件,然后配置指向正确的路径就可以了;

plugin_dir = /usr/local/mysql/lib/plugin:mysql中plugin插件所在的路径;log-error = /data/mysql_db/data/error.log:mysql生成的错误日志存放的路径,它是一个文本文件,遇到有什么问题想查看日志时可以到这个文件里去找线索;symbolic-links = 0:符号连接,如果设置为1,则mysql数据库和表里的数据支持储存在datadir目录之外的路径下,默认都是0(较新版本的mysql下默认是1);

part 2

local-infile = 0:设置为0表示关闭服务器从本地load的功能,设置为1则打开;max-connections = 320:设置Mysql的最大连接数;如果实际应用中,并发的连接数量比较大,可以适当的调高此参数,但是,也不是说越高越好,因为这牵涉到服务器的机器硬件的性能。

有时候查看日志,会看到例如:“Error 1040 : Too many connections”这样的错误,导致这种错误出现的原因通常是由于该参数的值设置过小导致;

query_cache_limit = 4M:指定单个查询可以使用的缓冲区的大小,一般默认值是1M;query_cache_size = 64M:查询的缓存大小设置;query_cache_type = 1:设置缓存的类型,有以下几种设置方法:

设置成0,表示禁用缓存;设置成1,表示缓存所有结果;设置成2,表示只缓存在select语句中通过SQL_CACHE指定需要缓存的查询;

max_user_connections = 320:用户连接数的最大值设置,有时候会出现:“has more than max_user_connections active connections”的错误,不一定是该参数的设置个数不够,有时候需要从代码里找原因,查看是否连接结束后及时断开;wait_timeout = 9000:超时等待时间,单位秒,即一个connection在若干秒内无响应,则服务器切断与这个客户端的连接;connect_timeout = 20:客户端与服务器建立连接时,服务器返回错误的握手协议前,等待数据包到来的最大时间,单位秒;thread_cache_size = 256:用于缓存空闲的线程;key_buffer_size = 16M:用于指定索引缓冲区的大小;

part 3

join_buffer_size = 2M:查询语句中如果较多次使用join查询时,可适当增大该参数,默认2M,如果几乎不怎么用join进行查询,可不予理会;max_heap_table_size = 16M:指定用户可创建内存表的大小;low_priority_updates = 1:设置服务器降低写操作的优先级,设置为1表示以读为主;max_allowd_packet = 128M:设置一次消息传输的最大值;max_seeks_for_key = 100:设置基于key查询允许的最大查找次数;sort_buffer_size = 16M:通过增加该值的大小可以提高查询中使用“group by”和“order by”的性能;read_buffer_size = 16M:设置服务器读缓冲区的大小;max_connect_errors = 10:客户端连接服务器在没有成功时就被阻断了,累计后超过这个设置的值时,服务器将阻止该客户端后续的所有访问;myisam_sort_buffer_size = 64M:服务器重建索引时允许建立的最大临时文件的大小;tmp_table_size = 64M:设置临时内部堆积表(Heap)的大小;read_rnd_buffer_size = 1M:设置服务器随机读取缓冲区的大小;open_file_limit = 6050:控制文件打开的个数;

详解MySql的配置文件my.cnf的更多相关文章

  1. Mysql常用show命令,show variables like xxx 详解,mysql运行时参数

    MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show命令的使用还容易产生混淆,本文汇集了show命令的众多用法. 详细: http://dev.mysql.com/doc/ ...

  2. [深入学习Web安全](5)详解MySQL注射

    [深入学习Web安全](5)详解MySQL注射 0x00 目录 0x00 目录 0x01 MySQL注射的简单介绍 0x02 对于information_schema库的研究 0x03 注射第一步—— ...

  3. MySQL数据类型 int(M) 表示什么意思?详解mysql int类型的长度值问题

    MySQL 数据类型中的 integer types 有点奇怪.你可能会见到诸如:int(3).int(4).int(8) 之类的 int 数据类型.刚接触 MySQL 的时候,我还以为 int(3) ...

  4. MySQL存储过程详解 mysql 存储过程

    原文地址:MySQL存储过程详解  mysql 存储过程作者:王者佳暮 mysql存储过程详解 1.     存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储 ...

  5. 【文章阅读】详解MySQL数据类型

    详解MySQL数据类型 - 五月的仓颉 - 博客园 http://www.cnblogs.com/xrq730/p/8446246.html 注:对于MySQL的数据类型做了详细的讲解,这是我看过的最 ...

  6. 详解Mysql分布式事务XA(跨数据库事务)

    详解Mysql分布式事务XA(跨数据库事务) 学习了:http://blog.csdn.net/soonfly/article/details/70677138 mysql执行XA事物的时候,mysq ...

  7. HTTPD之二————HTTPD服务详解————httpd的配置文件常见设置

    HTTPD之二----HTTPD服务详解----httpd的配置文件常见设置 HTTP服务器应用 http服务器程序 httpd apache nginx lighttpd 应用程序服务器 IIS,a ...

  8. 详解MySQL索引

    原文链接详解MySQL索引 索引介绍 索引是帮助MySQL高效获取数据的数据结构.在数据之外,数据库系统还维护着一个用来查找数据的数据结构,这些数据结构指向着特定的数据,可以实现高级的查找算法. 本文 ...

  9. 详解mysql体系结构和存储引擎

    概述 之前整理的一些mysql方面内容,适合做备忘,因为我基本不会去记这些概念性的东西,大家做个了解就可以了. 一.定义数据库和实例 1.数据库: 物理操作系统文件或其他形式文件类型的集合. 在MyS ...

随机推荐

  1. Entity Framework Core 迁移命令

    Add-Migration init Update-Database init 修改model后,执行迁移的命令 更新数据库 每次更新都要{update}修改 Add-Migration {updat ...

  2. EF Core命令

    新建 Add-Migration init Update-Database init 修改model后,执行迁移的命令 更新数据库 每次更新都要{update}修改 Add-Migration {up ...

  3. PHP基础回顾

    变量:声明变量以$开始,变量名可以用中文但是不要用:不能使用特殊字符,比如@,下划线除外:变量名区分大小写.可变变量 $a = b; $b = c; => $$a = c;  理论上$可以无限使 ...

  4. Oracle 别名

    在Oracle数据库中,给表起别名时,直接"Tablename 别名"就可以,不需要AS. 在Oracle数据库中,数据表别名是不能加AS的,例如: SELECT a.USERNA ...

  5. [CSP-S模拟测试]:五子棋(模拟)

    题目传送门(内部题122) 输入格式 输入文件第一行为一个正整数$n$,表示双方总共下了多少步棋. 接下来$n$行,输入文件每行两个正整数.第$i$行的两个数$x,y$表示第$i$步的棋子下在了第$x ...

  6. Hibernate与MyBaits的区别?

    (1)Hibernate是全自动,而myBatis是半自动,Hibernate完全可以通过对象关系模型实现对数据库的操作,拥有完整的JavaBean对象与数据库的映射结构来自动生成SQL.而myBat ...

  7. 并发量,tps,qps

    QPS/TPS/并发量/系统吞吐量的概念 2017年08月13日 17:24:47 阅读数:10682 我们在日常工作中经常会听到QPS/TPS这些名词,也会经常被别人问起说你的系统吞吐量有多大.这个 ...

  8. CountDownLatch和CyclicBarrier的比较

    1.CountDownLatch是线程组之间的等待,即一个(或多个)线程等待N个线程完成某件事情之后再执行:而CyclicBarrier则是线程组内的等待,即每个线程相互等待,即N个线程都被拦截之后, ...

  9. jsvnadmin访问一直登陆 找不到用户

    报错:AH01618: user zhangsan not found: /svn/hangzhi 在svnadmin控制台上将用户分好组,不然即使有账户也登不上

  10. Android动态广播的注册与销毁

    一个内部类:BroadcastReceiver的子类,并定义收到广播之后的操作: class LockScreenBroadcastReceiver extends BroadcastReceiver ...