精华内容
下载资源
问答
  • Mysql配置文件my.cnf 安装了mysql没有my.cnf文件的情况 1、可以把mysql的示例配置文件,如my-medium.cnf拷贝到/etc/my.cnf,再去修改/etc/my.cnf的配置/usr/share/doc/MySQL-server-5.5.38/my-medium.cnf(Example ...

     

    Mysql配置文件my.cnf

    安装了mysql没有my.cnf文件的情况

    1、可以把mysql的示例配置文件,如my-medium.cnf拷贝到/etc/my.cnf,再去修改/etc/my.cnf的配置/usr/share/doc/MySQL-server-5.5.38/my-medium.cnf(Example MySQL config file for medium systems with little memory (32M - 64M) )

    可以通过命令:>find / -name 你要找的文件(my.cnf/ my-medium.cnf)  或者  >whereis my.cnf 找到.

    所有mysql的配置文件例子都放在:

    # ll /usr/share/doc/MySQL-server-5.5.38/

    2、参考下面的文章修改my.cnf文件(Example MySQL config file for very large systems)

     

    修改MySQL的时区:

     

    查看: mysql> show variables like '%time_zone%';   

     

    1 、可以通过修改my.cnf
    在 [mysqld] 之下加
    default-time-zone=timezone
    来修改时区。如:
    default-time-zone = '+8:00'
    修改完重启msyql  ># service mysql restart
    注意一定要在 [mysqld] 之下加 ,否则会出现 unknown variable 'default-time-zone=+8:00'

     

    2、通过命令行在线修改(经测试不行)

     看到有人通过命令行修改,试过之后发现只能改掉 timezone(而且只针对当前客户端影响),但是查处的时间还是原来的CST时间,重启mysql也没有,全部恢复了。所以这种方式行不通,还是需要修改my.cnf配置文件才行.以下为测试:

    1. set time_zone = timezone  
    2. 比如北京时间(GMT+0800)  
    3. set time_zone = '+8:00'; 如下:  
    4. mysql> set time_zone='+8:00';
    5.   
    6. mysql> show variables like '%time_zone%';     
    7. +------------------+--------+  
    8. | Variable_name    | Value  |  
    9. +------------------+--------+  
    10. | system_time_zone | CST    |  
    11. | time_zone        | +08:00 |  
    12. +------------------+--------+  

    mysql> flush privileges;   # 立即生效

    此时mysql时区已更改正确,与系统时区都使用为 北京时间。

    ## 能改掉 timezone(而且只针对当前客户端影响),但是查处的时间还是原来的CST时间,重启mysql也没有,全部恢复了。所以这种方式行不通,还是需要修改my.cnf配置文件才行.

     

     

     

    验证:

    mysql> show variables like '%time_zone%';

     

    mysql > select CURTIME();

    mysql > select now();

     

     

     

     

     

    下面一篇讲解my.cnf参数配置的文章供参考:

    《linuxmysql的编译安装和my.cnf配置文件详解》:http://blog.itpub.net/26690043/viewspace-719495/

    还有一篇:《linux下mysql配置文件my.cnf详解》http://www.cnblogs.com/captain_jack/archive/2010/10/12/1848496.html 

     

     

    linux下mysql的编译安装和my.cnf配置文件详解 

     

     

    本文主要撰写如何在CentOS6.0上编译安装Mysql数据库,和一些收集的Mysql主配文件my.cnf注释详解。虽然在系统上已经自带了Mysql安装包,但是为了保证整个系统的统一、和一些性能参数的调优,我们需要编译安装Mysql才能满足我们的需求。Mysql的官方网站提供Mysql服务器的源码包和已经编译的二进制安装包供下载。可以通过访问官网下载所需要的Mysql版本,本文采用的是Mysql 5.1版本。

    下载Mysql
    # wget http://mysql.mirrors.hoobly.com/Downloads/MySQL-5.1/mysql-5.1.57.tar.gz

    编译安装Mysql
    # tar zxvf mysql-5.1.57.tar.gz
    # cd mysql-5.1.57
    #./configure --prefix=/usr/local/webserver/mysql/ \
    --enable-assembler \
    --with-extra-charsets=complex \
    --enable-thread-safe-client \
    --with-big-tables \
    --with-readline \
    --with-ssl \
    --with-embedded-server \
    --enable-local-infile \
    # make \
    # make install

    接下来创建mysql用户和相关目录,这根据个人习惯目录自定。

    # mkdir -p /data/mysqldata
    # mkdir -p /data/mysqldata/database
    # mkdir -p /data/mysqldata/log
    # mkdir -p /data/mysqldata/pid
    # groupadd mysql
    # useradd -g mysql -d /data/mysqldata/database -s /sbin/nologin mysql
    # chgrp -R mysql /usr/local/webserver/mysql/.
    # chown -R root:mysql /usr/local/webserver/mysql/*
    # chown -R mysql:mysql /data/mysqldata/*

    以下是Mysql主配文件my.cnf参数和详解:

    # Example MySQL config file for very large systems.
    #
    #下面的配置参数适用于512M内存的服务器。
    #
    # You can copy this file to
    # /etc/my.cnf to set global options,
    # mysql-data-dir/my.cnf to set server-specific options (in this
    # installation this directory is /data/mysql/data) or
    # ~/.my.cnf to set user-specific options.
    #
    # In this file, you can use all long options that a program supports.
    # If you want to know which options a program supports, run the program
    # with the "--help" option.
    
    # The following options will be passed to all MySQL clients
    [client]
    #password = your_password
    port  = 3306
    socket  = /tmp/mysql.sock
    
    # Here follows entries for some specific programs
    
    # The MySQL server
    [mysqld]
    user            = mysql
    port            = 3306
    socket          = /tmp/mysql.sock
    basedir         = /usr/local/webserver/mysql
    datadir         = /data/mysqldata/database
    log-error       = /data/mysqldata/log/mysql_error.log
    pid-file        = /data/mysqldata/pid/mysql.pid
    
    #BDB 相关选项
    # 如果你运行的MySQL服务有BDB支持但是你不准备使用的时候使用此选项. 这会节省内存并且可能加速一些事.
    skip-bdb
    
    #避免MySQL的外部锁定,减少出错几率增强稳定性。
    skip-locking
    
    #禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求!
    skip-name-resolve
    
    #当创建新表时作为默认使用的表类型, 如果在创建表示没有特别执行表类型,将会使用此值
    #mysql是默认支持4种存储引擎:CSV,MRG_MYISAM,MEMORY,MyISAM,默认不支持InnoDB存储引擎(消耗内存比较大).由于内存很小,推荐使用MyISAM存储引擎.
    default_table_type = MyISAM
    
    #设定默认的事务隔离级别,可用的级别:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE
    transaction_isolation = READ-UNCOMMITTED
    
    #限制mysqld能打开文件的最大个数,取值:max_connections*5 或者 max_connections + table_cache*2
    open_files_limit = 600
    
    #back_log 是操作系统在监听队列中所能保持的连接数,队列保存了在MySQL连接管理器线程处理之前的连接.如果你有非常高的连接率并且出现”connection refused” 报错,你就应该增加此处的值.检查你的操作系统文档来获取这个变量的最大值.如果将back_log设定到比你操作系统限制更高的值,将会没有效果。
    back_log = 40
    
    # 关键词缓冲的大小, 一般用来缓冲MyISAM表的索引块.不要将其设置大于你可用内存的30%,因为一部分内存同样被OS用来缓冲行数据,甚至在你并不使用MyISAM 表的情况下, 你也需要仍旧设置起 8-64M 内存由于它同样会被内部临时磁盘表使用.
    key_buffer_size = 32M
    
    #服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB字段一起工作时相当必要),每个连接独立的大小.大小动态增加
    max_allowed_packet = 16M
    
    #线程使用的堆大小。此容量的内存在每次连接时被预留.MySQL 本身常不会需要超过64K的内存,如果你使用你自己的需要大量堆的UDF函数,或者你的操作系统对于某些操作需要更多的堆,你也许需要将其设置的更高一点。
    thread_stack = 192K
    
    #所有线程所打开表的数量。增加此值就增加了mysqld所需要的文件描述符的数量。这样你需要确认在[mysqld_safe]中 “open-files-limit” 变量设置打开文件数量允许至少4096。
    table_cache = 60
    
    #允许外部文件级别的锁。打开文件锁会对性能造成负面影响。所以只有在你在同样的文件上运行多个数据库实例时才使用此选项(注意仍会有其他约束!)。或者你在文件层面上使用了其他一些软件依赖来锁定MyISAM表
    external-locking = FALSE
    
    #排序缓冲被用来处理类似ORDER BY以及GROUP BY队列所引起的排序,如果排序后的数据无法放入排序缓冲, 一个用来替代的基于磁盘的合并分类会被使用,查看 “Sort_merge_passes” 状态变量。在排序发生时由每个线程分配。
    sort_buffer_size = 256K
    
    #用来做MyISAM表全表扫描的缓冲大小。当全表扫描需要时,在对应线程中分配。
    read_buffer_size = 1M
    
    #此缓冲被使用来优化全联合(full JOINs 不带索引的联合),类似的联合在极大多数情况下有非常糟糕的性能表现。但是将此值设大能够减轻性能影响。通过 “Select_full_join” 状态变量查看全联合的数量。当全联合发生时,在每个线程中分配
    join_buffer_size = 256K
    
    #当在排序之后,从一个已经排序好的序列中读取行时,行数据将从这个缓冲中读取来防止磁盘寻道。如果你增高此值,可以提高很多ORDER BY的性能。当需要时由每个线程分配。
    read_rnd_buffer_size = 4M
    
    #MyISAM 使用特殊的类似树的cache来使得突发插入 (这些插入是,INSERT … SELECT, INSERT … VALUES (…), (…), …, 以及 LOAD DATA INFILE) 更快。此变量限制每个进程中缓冲树的字节数。设置为 0 会关闭此优化。为了最优化不要将此值设置大于 “key_buffer_size”。当突发插入被检测到时此缓冲将被分配。
    bulk_insert_buffer_size = 2M
    
    #此缓冲当MySQL需要在 REPAIR, OPTIMIZE, ALTER 以及 LOAD DATA INFILE 到一个空表中引起重建索引时被分配。这在每个线程中被分配.所以在设置大值时需要小心。
    myisam_sort_buffer_size = 4M
    
    #MySQL重建索引时所允许的最大临时文件的大小 (当 REPAIR, ALTER TABLE 或者 LOAD DATA INFILE)。如果文件大小比此值更大,索引会通过键值缓冲创建(更慢)
    myisam_max_sort_file_size = 10G
    
    #如果被用来更快的索引创建索引所使用临时文件大于制定的值,那就使用键值缓冲方法。这主要用来强制在大表中长字串键去使用慢速的键值缓冲方法来创建索引。
    myisam_max_extra_sort_file_size = 10G
    
    #如果一个表拥有超过一个索引, MyISAM 可以通过并行排序使用超过一个线程去修复他们。这对于拥有多个CPU以及大量内存情况的用户,是一个很好的选择。
    myisam_repair_threads = 1
    
    #自动检查和修复没有适当关闭的 MyISAM 表.
    myisam_recover
    
    thread_cache = 128
    
    #我们在cache中保留多少线程用于重用,当一个客户端断开连接后,如果cache中的线程还少于thread_cache_size。则客户端线程被放入cache中。这可以在你需要大量新连接的时候极大的减少线程创建的开销。(一般来说如果你有好的线程模型的话,这不会有明显的性能提升.)
    thread_cache_size = 10
    
    #查询缓冲常被用来缓冲 SELECT 的结果并且在下一次同样查询的时候不再执行直接返回结果。打开查询缓冲可以极大的提高服务器速度, 如果你有大量的相同的查询并且很少修改表。查看 “Qcache_lowmem_prunes” 状态变量来检查是否当前值对于你的负载来说是否足够高。注意: 在你表经常变化的情况下或者如果你的查询原文每次都不同。查询缓冲也许引起性能下降而不是性能提升。
    query_cache_size = 0M
    
    #只有小于此设定值的结果才会被缓冲,此设置用来保护查询缓冲,防止一个极大的结果集将其他所有的查询结果都覆盖.
    query_cache_limit = 2M
    
    query_cache_min_res_unit = 4K
    
    #内部(内存中)临时表的最大大小,如果一个表增长到比此值更大,将会自动转换为基于磁盘的表。此限制是针对单个表的,而不是总和.
    tmp_table_size = 512K
    
    #独立的内存表所允许的最大容量。此选项为了防止意外创建一个超大的内存表导致永尽所有的内存资源.
    max_heap_table_size = 32M
    
    #所有的使用了比这个时间(以秒为单位)更多的查询会被认为是慢速查询。不要在这里使用”1″, 否则会导致所有的查询,甚至非常快的查询页被记录下来(由于MySQL 目前时间的精确度只能达到秒的级别)。
    ong_query_time = 1
    
    #在慢速日志中记录更多的信息。一般此项最好打开。打开此项会记录使得那些没有使用索引的查询也被作为到慢速查询附加到慢速日志里
    log_long_format
    
    #MySQL 服务所允许的同时会话数的上限,其中一个连接将被SUPER权限保留作为管理员登录。 即便已经达到了连接数的上限.
    max_connections = 200
    
    #指定一个请求的最大连接时间。
    wait_timeout = 30
    
    #每个客户端连接最大的错误允许数量,如果达到了此限制。这个客户端将会被MySQL服务阻止直到执行了”FLUSH HOSTS” 或者服务重启,非法的密码以及其他在链接时的错误会增加此值。查看 “Aborted_connects” 状态来获取全局计数器.
    max_connect_errors = 200
    
    expire_logs_days = 7
    #Try number of CPU's*2 for thread_concurrency
    #此允许应用程序给予线程系统一个提示在同一时间给予渴望被运行的线程的数量。此值只对于支持 thread_concurrency() 函数的系统有意义( 例如Sun Solaris)。你可可以尝试使用 [CPU数量]*(2..4) 来作为thread_concurrency的值
    thread_concurrency = 8
    
    # Don't listen on a TCP/IP port at all. This can be a security enhancement,
    # if all processes that need to connect to mysqld run on the same host.
    # All interaction with mysqld must be made via Unix sockets or named pipes.
    # Note that using this option without enabling named pipes on Windows
    # (via the "enable-named-pipe" option) will render mysqld useless!
    #
    #skip-networking
    
    #默认关闭 Federated
    skip-federated
    
    # Replication Master Server (default)
    # binary logging is required for replication
    #log-bin=mysql-bin
    #在一个事务中binlog为了记录SQL状态所持有的cache大小,如果你经常使用大的,多声明的事务,你可以增加此值来获取更大的性能。所有从事务来的状态都将被缓冲在binlog缓冲中然后在提交后一次性写入到binlog中。如果事务比此值大, 会使用磁盘上的临时文件来替代。此缓冲在每个连接的事务第一次更新状态时被创建
    binlog_cache_size = 2M
    
    max_binlog_cache_size = 4M
    max_binlog_size = 512M
    
    #唯一的服务辨识号,数值位于 1 到 2^32-1之间。此值在master和slave上都需要设置。如果 “master-host” 没有被设置,则默认为1, 但是如果忽略此选项,MySQL不会作为master生效.
    server-id = 1
    
    # Replication Slave (comment out master section to use this)
    #
    # To configure this host as a replication slave, you can choose between
    # two methods :
    #
    # 1) Use the CHANGE MASTER TO command (fully described in our manual) -
    #    the syntax is:
    #
    #    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
    #    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
    #
    #    where you replace <host>, <user>, <password> by quoted strings and
    #    <port> by the master's port number (3306 by default).
    #
    #    Example:
    #
    #    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
    #    MASTER_USER='joe', MASTER_PASSWORD='secret';
    #
    # OR
    #
    # 2) Set the variables below. However, in case you choose this method, then
    #    start replication for the first time (even unsuccessfully, for example
    #    if you mistyped the password in master-password and the slave fails to
    #    connect), the slave will create a master.info file, and any later
    #    change in this file to the variables' values below will be ignored and
    #    overridden by the content of the master.info file, unless you shutdown
    #    the slave server, delete master.info and restart the slaver server.
    #    For that reason, you may want to leave the lines below untouched
    #    (commented) and instead use CHANGE MASTER TO (see above)
    #
    # required unique id between 2 and 2^32 - 1
    # (and different from the master)
    # defaults to 2 if master-host is set
    # but will not function as a slave if omitted
    #server-id       = 2
    #
    # The replication master for this slave - required
    #master-host     =   <hostname>
    #
    # The username the slave will use for authentication when connecting
    # to the master - required
    #master-user     =   <username>
    #
    # The password the slave will authenticate with when connecting to
    # the master - required
    #master-password =   <password>
    #
    # The port the master is listening on.
    # optional - defaults to 3306
    #master-port     =  <port>
    #
    # binary logging - not required for slaves, but recommended
    #log-bin=mysql-bin
    #
    # binary logging format - mixed recommended
    #binlog_format=mixed
    
    # Point the following paths to different dedicated disks
    #tmpdir  = /tmp/
    #log-update  = /path-to-dedicated-directory/hostname
    
    # Uncomment the following if you are using InnoDB tables
    #innodb_data_home_dir = /data/mysql/data/
    #innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend
    #innodb_log_group_home_dir = /data/mysql/data/
    #innodb_log_arch_dir = /data/mysql/data/
    # You can set .._buffer_pool_size up to 50 - 80 %
    # of RAM but beware of setting memory usage too high
    #innodb_buffer_pool_size = 384M
    #innodb_additional_mem_pool_size = 20M
    # Set .._log_file_size to 25 % of buffer pool size
    #innodb_log_file_size = 100M
    #innodb_log_buffer_size = 8M
    #innodb_flush_log_at_trx_commit = 1
    #innodb_lock_wait_timeout = 50
    
    [mysqldump]
    #不要在将内存中的整个结果写入磁盘之前缓存. 在导出非常巨大的表时需要此项
    quick
    max_allowed_packet = 16M
    
    [mysql]
    no-auto-rehash

    根据需求修改参数值,然后保存为/etc/my.cnf文件。

    初始化mysql数据库
    # /usr/local/webserver/mysql/bin/mysql_install_db \
    --basedir=/usr/local/webserver/mysql \
    --datadir=/data/mysqldata/database \
    --user=mysql

    最后在说下启动和关闭mysql服务器
    # /usr/local/webserver/mysql/bin/mysqld_safe --user=mysql & //启动服务
    # /usr/local/webserver/mysql/bin/mysqladmin -u root -p shutdown //停止服务

     

     

    相关视频课程推荐《站长必修课:网站是怎样做出来的?》https://edu.51cto.com/sd/3be5b

    网站是怎样做出来的?

     

     

     

    展开全文
  • MySQL配置文件详解

    万次阅读 2018-07-23 10:13:15
    MySQL配置文件详解 配置文件具体的结构分析: [mysqld] port = 3306 socket = /tmp/mysql.sock # 设置mysql的安装目录 basedir=F:\\Hzq Soft\\MySql Server 51GA # 设置mysql数据库的数据的存放目录,必须是data...

    MySQL配置文件详解

    配置文件具体的结构分析:
    [mysqld]
    port = 3306
    socket = /tmp/mysql.sock
    # 设置mysql的安装目录
    basedir=F:\\Hzq Soft\\MySql Server 51GA
    # 设置mysql数据库的数据的存放目录,必须是data,或者是\\xxx-data
    datadir=F:\\Hzq Soft\\MySql Server 51GA\\data
    #innodb_log_arch_dir 默认datadir
    #innodb_log_group_home_dir  默认datadir
    # 设置mysql服务器的字符集,默认编码
    default-character-set=utf8
    
    #连接数的操作系统监听队列数量,如果经常出现“拒绝连接”错误可适当增加此值
    back_log = 50
    #不使用接听TCP / IP端口方法,mysqld通过命名管道连接
    #skip-networking
    # 最大连接数量
    max_connections = 100
    #打开表的线程数量限定,最大4096,除非用mysqld_safe打开限制
    table_open_cache = 2048
    #MySql 服务接收针对每个进程最大查询包大小
    max_allowed_packet = 16M
    #作用于SQL查询单笔处理使用的内存缓存,如果一笔操作的二进制数据超过了限定大小,将会在磁盘上开辟空间处理,一般设为 1-2M即可,默认1M
    binlog_cache_size = 2M
    #单个内存表的最大值限定
    max_heap_table_size = 64M
    #为每个线程分配的排序缓冲大小
    sort_buffer_size = 8M
    #join 连表操作的缓冲大小,根据实际业务来设置,默认8M
    join_buffer_size = 32M
    #操作多少个离开连接的线程的缓存
    thread_cache_size = 8
    #并发线程数量,默认为8,可适当增加到2倍以内。如果有多个CPU可以乘 上CPU的数量。双核CPU可以乘 上当前最核数再乘 上70%-85%
    thread_concurrency = 16
    #专用于具体SQL的缓存,如果提交的查询与几次中的某查询相同,并且在query缓存中存在,则直接返回缓存中的结果。
    query_cache_size = 64M
    #对应上一条设置,当查询的结果超过下面设置的大小时,将不会趣入到上面设置的缓存区中,避免了一个大的结果占据大量缓存。
    query_cache_limit = 2M
    #设置加全文检索中的最小单词长度。
    #ft_min_word_len = 4
    #CREATE TABLE 语句的默认表类型,如果不自己指定类型,则使用下行的类型
    default-storage-engine = InnoDB
    #线程堆栈大小,mysql说它自己用的堆栈大小不超过64K。这个值可适当设高一点(在RCA的项目中都是共用同一个数据库连接的),默认192K
    thread_stack = 800K
    #设置事务处理的级别,默认 REPEATABLE-READ,一般用它就即可,以下二行按顺序对应,
    #可读写未提交的数据,创建未提交的数据副本读写,未提交之前可读不可写,只允许串行序列招行事务。
    # READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE
    transaction_isolation = REPEATABLE-READ
    #单一内存临时表在内存中的大小,超过此值自动转换到磁盘操作
    tmp_table_size = 64M
    #启动二进制日志功能,可通过它实现时间点恢复最新的备份
    #log-bin=mysql-bin
    #二进制日志格式,对就上一条,-建议混合格式
    #binlog_format=mixed
    #转换查询为缓慢查询
    slow_query_log
    #对应上一条,如果一个查询超过了下条设定的时间则执行上一条。
    long_query_time = 2
    #自定义主机ID识别符,用于主从或多服务器之间识别,为 一个 int 类型
    server-id = 1
    #一般用来缓存MyISAM表的主键,也用于临时的磁盘表缓存主键,上面多次出现临时磁盘表,所以就算不用MyISAM也最好为其设置一个不小的值,默认32M
    key_buffer_size = 64M
    #全表扫描MyISAM表时的缓存,每个线程拥有下行的大小。
    read_buffer_size = 2M
    #排序操作时与磁盘之间的缓存,分到每个线程,默认16M
    read_rnd_buffer_size = 24M
    #MyISAM使用特殊树形进行批量插入时的缓存,如insert ... values(..)(..)(..)
    bulk_insert_buffer_size = 64M
    #MyISAM索引文件的最大限定,
    myisam_max_sort_file_size = 10G
    #如果一个myisam表有一个以上的索引, MyISAM可以使用一个以上线程来排序并行它们。较耗硬件资源,如果你的环境不错,可以增加此值。
    myisam_repair_threads = 2
    #自动检查和修复无法正确关闭MyISAM表。
    myisam_recover
    # *** INNODB Specific options ***
    #开启下条将会禁用 INNODB
    #skip-innodb
    #一般不用设置或者说设了也没多大用,InnoDB会自己与操作系统交互管理其附加内存池所使用InnoDB的存储数据的大小
    innodb_additional_mem_pool_size = 16M
    #innodb整体缓冲池大小,不宜过大,设为本地内存的 50%-75% 比较合适,在本机开发过程中可以设得较小一点如 64M,256M
    innodb_buffer_pool_size = 256M
    #InnoDB的数据存储在一个或多个数据文件组成的表空间
    innodb_data_file_path = ibdata1:10M:autoextend
    #用于异步IO操作的线程数量,默认为 4 ,可适当提高
    innodb_file_io_threads = 8
    #线程数内允许的InnoDB内核,不宜太高
    innodb_thread_concurrency = 16
    #InnoDB的事务日志快存行为,默认为 1,为0可减轻磁盘I/0操作,还有以为2
    innodb_flush_log_at_trx_commit = 1
    #InnoDB的用于的缓冲日志数据的大小
    innodb_log_buffer_size = 8M
    #日志文件,可设置为25%-90%的总体缓存大小,默认 256M. 修改此项要先删除datadir\ib_logfileXXX
    innodb_log_file_size = 256M
    #日志组数量,默认为3
    innodb_log_files_in_group = 3
    #InnoDB的日志文件位置。默认是MySQL的datadir
    #innodb_log_group_home_dir
    #InnoDB最大允许的脏页缓冲池的百分比,默认90
    innodb_max_dirty_pages_pct = 80
    #事务死锁超时设定
    innodb_lock_wait_timeout = 120
    
    [client]
    port = 3306
    socket = /tmp/mysql.sock
    # 设置mysql客户端的字符集
    default-character-set=utf8
    
    [mysqldump]
    quick
    max_allowed_packet = 16M
    
    [mysql]
    no-auto-rehash
    
    # Only allow UPDATEs and DELETEs that use keys.
    #safe-updates
    
    [WinMySQLAdmin]
    # 指定mysql服务启动启动的文件
    Server=F:\\myweb\\MySql Server\\bin\\mysqld.exe
    展开全文
  • 【MySQL】关于MySQL配置文件路径问题

    千次阅读 2020-02-29 12:33:26
    一、关于MySQL配置文件路径 绝大多数的mysql在启动的时候都要加载一个配置文件,相信大多数的开发都碰到过类似问题,机器启动时mysql默认都会启动,默认使用mysql命令可以连上服务端,但是数据存储在什么地方,...

    一、关于MySQL配置文件路径

     

    绝大多数的mysql在启动的时候都要加载一个配置文件,相信大多数的开发都碰到过类似问题,机器启动时mysql默认都会启动,默认使用mysql命令可以连上服务端,但是数据存储在什么地方,参数设置的是多少等等,这个就需要知道mysql使用的是哪个配置文件,那么mysql启动是按照什么顺序来加载配置文件的呢?

     

    在没有添加任何启动命令的时候,mysql会默认的依次从上到下检查配置文件是否存在,使用第一个发现的文件作为启动文件。

    因此在启动mysqld的时候,一定要确定好上述的路径下是否有对应的配置文件,避免加载了错误的文件,导致一些奇怪的问题。

    当然,如果不想使用默认加载顺序中的配置文件,可以在启动命令上增加 --defaults-file=/path/to/my.cnf来指定要使用的配置文件。

     

    二、指定配置文件启动实例

     

    #   /usr/sbin/mysqld    \

    --user=mysql  \

    --defaults-file=/etc/mysql/my.cnf  \

    --basedir=/usr  \

    --datadir=/var/lib/mysql  \

    --pid-file=/var/run/mysqld/mysqld.pid  \

    --socket=/var/run/mysqld/mysqld.sock

     

    三、查看mysqld启动时的加载文件

     

    查看当前mysqld启动时的加载文件

    # ps ax | grep '[m]ysqld'

    根据进程的文件信息来查看

    # cat /proc/$(pidof mysqld)/cmdline | tr '\0' '\n'

     

     

    使用mysqld自带的 --verbose功能

     

    # /usr/sbin/mysqld --help --verbose 

     

     

    # /usr/sbin/mysqld --help --verbose --skip-networking --pid-file=$(tempfile) 2> /dev/null | grep -A1 'Default options are read'

     

     

     

    四、编译MySQL时指定my.cnf路径的参数

     

    #   cmake  -DCMAK_INSTALL_PREFIC=/usr/local/mysql    \

        -DSYSCONFDIR=/etc  \

         -DDEFAULT_CHARSET=utf8  \

         -DDEFAULT_COLLATION=utf8_general_ci  \

          -DWITH_EXTRA_CHARSETS=all  

     

    #   make && make install

     

    如果你想将编译MySQL时指定my.cnf路径指向别处,如 /etc/mysql

    # mkdir  /etc/mysql

    # cmake  -DCMAK_INSTALL_PREFIC=/usr/local/mysql   -DSYSCONFDIR=/etc/mysql

    # chown -R mysql:mysql   /etc/mysql

     

    五、参考

     

    Installing MySQL Using a Standard Source Distribution

    https://dev.mysql.com/doc/refman/8.0/en/installing-source-distribution.html

     

    How to Build MySQL Server with CMake

    https://dev.mysql.com/doc/internals/en/cmake.html

     

    MySQL Source-Configuration Options

    https://dev.mysql.com/doc/refman/8.0/en/source-configuration-options.html

     

    MySQL指定配配置文件路径启动

    https://www.cnblogs.com/mangu-uu/p/4162984.html

    展开全文
  • Linux下MySQL配置文件my ini位置

    万次阅读 2019-02-18 13:25:25
    Linux下MySQL配置文件my ini位置
                   

    环境

    RedHat Linux 9 + VWWare 8.0 + SSH 3.2.9 + Putty 0.62 + MySQL 3.2

            

    问题

    LinuxMySQL配置文件my.ini位置

                               

     解决

    MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下;在Linux下叫my.cnf,该文件位于/etc/my.cnf

     

     

     

    参考资料

    请问谁知道linux mysql的配置文件my.ini在什么地方,没有搜索到啊

    http://bbs.csdn.net/topics/200081540

     

    LinuxMysql安装详解

    http://blog.csdn.net/yuanxuegui2008/article/details/5999321

               

    再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

    展开全文
  • mysql配置文件生效测试

    千次阅读 2016-07-30 13:39:26
    1、如何查找mysql配置文件在mac或者linux上安装mysql或者mariadb的时候一般采用 homebrew install xxx 就自动安装了,安装完成以后如何查看配置文件呢?执行如下命令:mysqld --help --verbose | more  (查看帮助,
  • Mac系统添加MySQL配置文件

    千次阅读 2018-10-02 19:58:33
    Mac系统添加MySQL配置文件  在Mac系统中,安装完MySQL后,是没有自动生成MySQL的配置文件的,在网上查找说需要自己手动创建配置文件,但是说的都不是很详细,所以配置起来总是失败。之后自己翻看了官方文档以及...
  • 如果你给mysql配置文件中加入了配置并且无效果 ,那么你的mysql我猜是绿色版,可能是在你安装mysql的时候并没有去指定默认的配置文件! 解决方案: 1、删除之前的Mysql服务 sc delete mysql 2、初始化mysql服务 ...
  • 使用docker建立mysql容器,存储数据时中文字符显示为问号,原因为mysql配置文件的问题 进入数据库,输入指令 show variables like '%char%'; 如果 value 列出现 latin1 需要修改 mysql 配置文件 以本人的mysql容器...
  • windows 下 修改mysql配置文件

    千次阅读 2019-03-30 10:33:39
    windows 下安装mysql配置文件 # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html # *** DO NOT EDIT THIS FILE. It's a template ...
  • MySQL 配置文件 二进制日志log-bin 主从复制 错误日志log-error 默认是关闭的,记录严重的警告和错误的信息,每次启动和关闭的详细信息等。 查询日志log 默认是关闭的,记录查询的sql语句,如果开启会降低mysql的整体...
  • mysql配置文件查找

    千次阅读 2019-03-03 12:46:03
    自己做测试,有时候会要调整mysql配置文件,经常找不到,上网搜了下,结合几篇文章,小记一下,做个备忘。 linux下查看mysql配置文件,可以通过以下方法 首先先看看你的mysql在哪,通过which命令which mysql ...
  • 启动mysql配置文件的启动方式

    万次阅读 2016-12-20 17:09:49
    配置文件加载问题(查看自己使用的哪个配置文件mysql 配置文件加载位置与顺序: 1./usr/local/mysql/bin/mysqld –verbose –help >help.txt 2>&1 (/usr/local/mysql/bin/mysqld –verbose –help 这个命令生成...
  • Linux下MySQL配置文件my.ini位置

    千次阅读 2016-12-07 17:27:25
    Linux下MySQL配置文件my.ini位置 问Linux下MySQL配置文件my.ini位置 解决 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下;在Linux下叫my.cnf,该文件位于/etc/my.cnf。 ...
  • 问题:ubuntu系统中,需要修改mysql配置文件my.cnf。(修改该文件权限777,然后修改配置文件。然后直接重启了系统)。最后启动mysql,问题就来了,启动失败。  查看系统日志,如下:大概意思是权限全局可写,...
  • 1、mysql服务无法手动启动、关闭问题、mysql桌面应用权限问题解决。 2、mysql配置文件路径问题解决。
  • mysql配置文件路径

    千次阅读 2018-05-04 19:21:59
    一、mysqld mysqld,也被称为MySQL服务器,mysqld程序可在启动时指定的许多选项。有关选项的完整列表: ...二、mysql 查看当前使用的配置文件 mysql --help|grep 'my.cnf' ./mysqld --verbose --help | grep...
  • mac下用brew安装的mysql配置文件路径

    千次阅读 2018-09-25 20:04:49
    MySQL】Mac 上使用 brew 安装的 mysql 配置文件位置 在mac 上使用 brew 安装 mysql 后,发现 /etc/my.cnf 并不存在。 于是使用命令查找 MySQL 的配置启动文件列表: $ mysqld --help --verbose | less ... ...
  • linux下MySQL配置文件讲解

    千次阅读 2013-06-15 11:30:01
    可以使用的MySQL配置文件共有5个。 ·/etc/my.cnf是默认的MySQL配置文件。应该对这个文件配置修改。它是为学习目的而设计的。 ·my-small.cnf是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的...
  • MySQL配置文件详解(/etc/my.cnf)

    千次阅读 2020-03-12 22:18:46
    MySQL配置文件详解 port = 3306: 指定了Mysql开放的端口; basedir = /usr/local/mysql: 指定Mysql安装的绝对路径; datadir = /data/mysql_db_data: 指定Mysql数据存放的绝对路径; socket = /...
  • mysql配置文件详解

    千次阅读 2017-10-16 21:47:36
    [client]  port = 3309  socket = /home/mysql/mysql/tmp/mysql...include /home/mysql/mysql/etc/mysqld.cnf #包含的配置文件 ,把用户名,密码文件单独存放  port = 3309  socket = /home/mysql/m
  • 配置文件Mac上Mysql默认没有配置文件,需要自己添加,可以support-file 文件目录下的my-default.cnf复制一份到桌面上,可以把文件中的内容全部替换为一下内容# Example MySQL config file for small
  • MySQL 配置文件my.cnf添加max_connections不生效 问题描述 最近为了方便测试,增加测试环境数据库,通过MySQL官方指定的yum源安装了mysql5.6.42,开发在连接MySQL数据库时出现 too many connections,知道是默认的...
  • 后来才发现原来是因为修改的文件并非MySQL服务器读取的配置文件。 如果不清楚MySQL当前使用的配置文件路径,可以尝试这样查看: mysqld --verbose --help|grep -A 1 'Default options' 复制代码 或者是执行:...
  • docker下修改mysql配置文件

    万次阅读 2019-05-20 14:11:36
    第一步: 找到要修改的镜像 docker ps 第二步: 进入要修改的镜像 docker exec -it e1066fe2db35 /bin/bash 第三步: 进入要修改的文件目录 cd /etc/mysql ...第五步: 修改my.conf配置文件...
  • 如何查看MySQL配置文件的读取顺序。

    千次阅读 2015-12-04 15:54:52
    对已一些mysql配置文件,有时候会被其他位置的配置文件覆盖出现问题,那么如何去查看mysql服务器启动时, 配置文件的读取顺序呢?  ***************************************************  (1)先查看...
  • 【MySQL】查看MySQL配置文件路径及相关配置

    万次阅读 多人点赞 2013-08-06 16:15:03
    后来才发现原来是因为修改的文件并非MySQL服务器读取的配置文件。 如果不清楚MySQL当前使用的配置文件路径,可以尝试这样查看: 从上图可以看出, 服务器首先会读取/etc/my.cnf文件,如果发现该文件不存在,再依次...
  • windows 下 mysql 配置文件不生效

    千次阅读 2019-04-14 18:20:03
    之前没怎么接触过 mysql配置文件 , 安装完成 mysql 后 , 没有发现配置文件。 习惯性的 Google , 找了篇博客, copy 了一下配置文件,结果死活不生效 。 我 copy 来的配置文件名称叫 my-default.ini 接下来分析下为...
  • windows 下 mysql 配置文件 .md

    千次阅读 2019-01-15 11:11:24
    之前没怎么接触过 mysql配置文件 , 安装完成 mysql 后 , 没有发现配置文件。 习惯性的 Google , 找了篇博客, copy 了一下配置文件,结果死活不生效 。 我 copy 来的配置文件名称叫 my-default.ini 接下来分析下为...
  • 修改mysql配置文件

    千次阅读 2019-05-27 18:00:27
    | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+    2)  修改my.cnf,在[client]下添加default-character-set=utf8 3)  在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 80,164
精华内容 32,065
关键字:

mysql配置文件

mysql 订阅