165d619ca69dd186c0470db8a41d66f1d57ecbc1
[genesis.git] / compass / deploy / ansible / roles / database / templates / my.cnf
1 #
2 # The MySQL database server configuration file.
3 #
4 # You can copy this to one of:
5 # - "/etc/mysql/my.cnf" to set global options,
6 # - "~/.my.cnf" to set user-specific options.
7 #
8 # One can use all long options that the program supports.
9 # Run program with --help to get a list of available options and with
10 # --print-defaults to see which it would actually understand and use.
11 #
12 # For explanations see
13 # http://dev.mysql.com/doc/mysql/en/server-system-variables.html
14
15 # This will be passed to all mysql clients
16 # It has been reported that passwords should be enclosed with ticks/quotes
17 # escpecially if they contain "#" chars...
18 # Remember to edit /etc/mysql/debian.cnf when changing the socket location.
19 [client]
20 port            = 3306
21 socket          = /var/run/mysqld/mysqld.sock
22
23 # Here is entries for some specific programs
24 # The following values assume you have at least 32M ram
25
26 # This was formally known as [safe_mysqld]. Both versions are currently parsed.
27 [mysqld_safe]
28 socket          = /var/run/mysqld/mysqld.sock
29 nice            = 0
30
31 [mysqld]
32 #
33 # * Basic Settings
34 #
35 user            = mysql
36 pid-file        = /var/run/mysqld/mysqld.pid
37 socket          = /var/run/mysqld/mysqld.sock
38 port            = 3306
39 basedir         = /usr
40 datadir         = /var/lib/mysql
41 tmpdir          = /tmp
42 lc-messages-dir = /usr/share/mysql
43 skip-external-locking
44 skip-name-resolve
45 #
46 # Instead of skip-networking the default is now to listen only on
47 # localhost which is more compatible and is not less secure.
48 #bind-address           = {{ hostvars[inventory_hostname]['ansible_' + INTERNAL_INTERFACE].ipv4.address }}
49 bind-address            = {{ HA_VIP }} 
50 #
51 # * Fine Tuning
52 #
53 key_buffer              = 16M
54 max_allowed_packet      = 16M
55 thread_stack            = 192K
56 thread_cache_size       = 8
57 # This replaces the startup script and checks MyISAM tables if needed
58 # the first time they are touched
59 myisam-recover         = BACKUP
60 max_connections        = 2000
61 max_connect_errors     = 8000
62 #table_cache            = 64
63 #thread_concurrency     = 10
64 #
65 # * Query Cache Configuration
66 #
67 query_cache_limit       = 1M
68 query_cache_size        = 16M
69 #
70 # * Logging and Replication
71 #
72 # Both location gets rotated by the cronjob.
73 # Be aware that this log type is a performance killer.
74 # As of 5.1 you can enable the log at runtime!
75 general_log_file        = /var/log/mysql/mysql.log
76 #general_log             = 1
77 #
78 # Error log - should be very few entries.
79 #
80 log_error = /var/log/mysql/error.log
81 #
82 # Here you can see queries with especially long duration
83 #log_slow_queries       = /var/log/mysql/mysql-slow.log
84 #long_query_time = 2
85 #log-queries-not-using-indexes
86 #
87 # The following can be used as easy to replay backup logs or for replication.
88 # note: if you are setting up a replication slave, see README.Debian about
89 #       other settings you may need to change.
90 #server-id              = 1
91 #log_bin                        = /var/log/mysql/mysql-bin.log
92 expire_logs_days        = 10
93 max_binlog_size         = 100M
94 #binlog_do_db           = include_database_name
95 #binlog_ignore_db       = include_database_name
96 #
97 # * InnoDB
98 #
99 # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
100 # Read the manual for more InnoDB related options. There are many!
101 #
102 # * Security Features
103 #
104 # Read the manual, too, if you want chroot!
105 # chroot = /var/lib/mysql/
106 #
107 # For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
108 #
109 # ssl-ca=/etc/mysql/cacert.pem
110 # ssl-cert=/etc/mysql/server-cert.pem
111 # ssl-key=/etc/mysql/server-key.pem
112 default-storage-engine = innodb
113 innodb_file_per_table
114 collation-server = utf8_general_ci
115 init-connect = 'SET NAMES utf8'
116 character-set-server = utf8
117
118 [mysqldump]
119 quick
120 quote-names
121 max_allowed_packet      = 16M
122
123 [mysql]
124 #no-auto-rehash # faster start of mysql but no tab completition
125
126 [isamchk]
127 key_buffer              = 16M
128
129 #
130 # * IMPORTANT: Additional settings that can override those from this file!
131 #   The files must end with '.cnf', otherwise they'll be ignored.
132 #
133 !includedir /etc/mysql/conf.d/
134