Commit c9d7f47164aa3ce56a0e31f88601ea39e1c9fbda
1 parent
8f912fc9
Bump to v0.2.0.
Use MariaDB 10.0 Include triggers, routines, and events in mysqldump command. Change some default values.
Showing
6 changed files
with
22 additions
and
8 deletions
| 1 | 1 | # cfe-mariadb-cookbook |
| 2 | 2 | |
| 3 | -This installs MariaDB by default and initiates databases and users. It can also install a script that performs a backup of all those databases into a designated S3 bucket. | |
| 3 | +This installs MariaDB 10.0 by default and initiates databases and users. It can also install a script that performs a backup of all those databases into a designated S3 bucket. | |
| 4 | 4 | |
| 5 | 5 | |
| 6 | 6 | The server is assumed to be using an IAM role with S3 bucket read/write access, instead of a physical credentials file. | ... | ... |
| ... | ... | @@ -80,14 +80,19 @@ default['mariadb']['server_root_password'] = 'secretpassword' |
| 80 | 80 | default['mariadb']['mysqld']['bind_address'] = '127.0.0.1' |
| 81 | 81 | default['mariadb']['mysqld']['port'] = '3306' |
| 82 | 82 | default['mariadb']['install']['type'] = 'package' |
| 83 | -default['mariadb']['install']['version'] = '5.5' | |
| 83 | +default['mariadb']['install']['version'] = '10.0' | |
| 84 | +default['mariadb']['use_default_repository'] = true | |
| 84 | 85 | default['mariadb']['forbid_remote_root'] = true |
| 85 | 86 | # io_capacity has to be roughly the IO capacity of the EC2 instance. |
| 86 | 87 | # buffer_pool_size can be increased to 75% (0.75) of RAM if dedicated server. |
| 87 | -default['mariadb']['innodb']['io_capacity'] = '30' | |
| 88 | +default['mariadb']['innodb']['io_capacity'] = '40' | |
| 88 | 89 | default['mariadb']['innodb']['buffer_pool_size'] = |
| 89 | 90 | ( %x(free -m).split(' ')[7].to_i * 0.5 ).round.to_s |
| 90 | -default['mariadb']['mysqld']['open_files_limit'] = '19000' | |
| 91 | +# Set innodb_open_files value same as table_open_cache. | |
| 92 | +# But set open_files_limit as highest. | |
| 93 | +default['mariadb']['innodb']['open_files'] = '2000' | |
| 94 | +default['mariadb']['mysqld']['table_open_cache'] = '2000' | |
| 95 | +default['mariadb']['mysqld']['open_files_limit'] = '24000' | |
| 91 | 96 | |
| 92 | 97 | ## Tip: |
| 93 | 98 | ## For encrypted attributes like passwords, | ... | ... |
| ... | ... | @@ -4,12 +4,12 @@ maintainer_email 'sysadmin @ chromedia.com' |
| 4 | 4 | license 'Apache License' |
| 5 | 5 | description 'Simplifies setup of MariaDB in Chromedia.' |
| 6 | 6 | long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) |
| 7 | -version '0.1.3' | |
| 7 | +version '0.2.0' | |
| 8 | 8 | |
| 9 | 9 | { |
| 10 | - 'mariadb' => '0.2.12', | |
| 11 | - 'mysql2_chef_gem' => '1.0.2', | |
| 12 | - 'database' => '4.0.9', | |
| 10 | + 'mariadb' => '0.3.1', | |
| 11 | + 'mysql2_chef_gem' => '1.1.0', | |
| 12 | + 'database' => '5.1.2', | |
| 13 | 13 | 'awscli' => '1.0.1', |
| 14 | 14 | 'cron' => '1.7.4' |
| 15 | 15 | }.each { |cb, ver| depends cb, '~> ' + ver } | ... | ... |
| ... | ... | @@ -21,6 +21,9 @@ |
| 21 | 21 | # Some notes: |
| 22 | 22 | # If the DB server is dedicated, it might be a good idea to |
| 23 | 23 | # add 'noatime' to the / disk's mount options. |
| 24 | +# NOTE: | |
| 25 | +# Make sure the open files limit are enforced for the mysql process. | |
| 26 | +# If not, try restarting the mysql service for the config to take effect. | |
| 24 | 27 | |
| 25 | 28 | chef_gem 'chef-rewind' do |
| 26 | 29 | compile_time true if respond_to?(:compile_time) |
| ... | ... | @@ -28,6 +31,7 @@ end |
| 28 | 31 | require 'chef/rewind' |
| 29 | 32 | |
| 30 | 33 | mysql2_chef_gem 'default' do |
| 34 | + gem_version '0.4.4' | |
| 31 | 35 | action :install |
| 32 | 36 | end |
| 33 | 37 | ... | ... |
| ... | ... | @@ -40,6 +40,7 @@ export_db() { |
| 40 | 40 | echo "$(date) : Export database ${1}." |
| 41 | 41 | "$mysqldump_bin" -h "$db_host" -P "$db_port" -C --opt \ |
| 42 | 42 | --no-create-db --single-transaction --lock-tables \ |
| 43 | + --routines --events --triggers \ | |
| 43 | 44 | -u "$2" -p"$3" "$1" > "${bak_dir}/${4}" |
| 44 | 45 | } |
| 45 | 46 | ... | ... |