Revert "Revert "set innodb_file_per_table to ON for MySQL / Galera""

This reverts commit 3f7e74ab24.

After identifying how to workaround the performance issues on the
undercloud, let's put this back in. Enabling innodb_file_per_table is
important for operators to be able to better manage their databases.

Change-Id: I435de381a0f0e3ef221e498f442335cdce3fb818
Depends-On: I77507c638237072e38d9888aff3da884aeff0b59
Closes-Bug: #1660722
This commit is contained in:
Alex Schultz 2017-02-03 18:18:42 +00:00
parent 3f7e74ab24
commit a0983a4ed7
3 changed files with 29 additions and 7 deletions

View File

@ -119,13 +119,14 @@ class tripleo::profile::base::database::mysql (
# MysqlNetwork and ControllerHostnameResolveNetwork in ServiceNetMap
$mysql_server_default = {
'mysqld' => {
'bind-address' => $bind_address,
'max_connections' => hiera('mysql_max_connections'),
'open_files_limit' => '-1',
'ssl' => $enable_internal_tls,
'ssl-key' => $tls_keyfile,
'ssl-cert' => $tls_certfile,
'ssl-ca' => undef,
'bind-address' => $bind_address,
'max_connections' => hiera('mysql_max_connections'),
'open_files_limit' => '-1',
'innodb_file_per_table' => 'ON',
'ssl' => $enable_internal_tls,
'ssl-key' => $tls_keyfile,
'ssl-cert' => $tls_certfile,
'ssl-ca' => undef,
}
}
$mysql_server_options_real = deep_merge($mysql_server_default, $mysql_server_options)

View File

@ -75,6 +75,7 @@ class tripleo::profile::pacemaker::database::mysql (
'default-storage-engine' => 'innodb',
'innodb_autoinc_lock_mode' => '2',
'innodb_locks_unsafe_for_binlog'=> '1',
'innodb_file_per_table' => 'ON',
'query_cache_size' => '0',
'query_cache_type' => '0',
'bind-address' => $bind_address,

View File

@ -0,0 +1,20 @@
---
features:
- Enable innodb_file_per_table for MySQL/MariaDB databases
upgrade:
- |
Newly created MySQL database tables will be stored in their own datafiles,
instead of in a single monolithic ibdata file.
- |
Existing MySQL database tables that are persisted within the monolithic
ibdata file will remain so unless the database is migrated as well.
- |
Migration of all current database tables out of the monolithic ibdata
file is possible by dumping and restoring the whole database to a new data
directory, however when using Galera the entire cluster must be shut
down and upgraded at once.
- |
Migration of individual tables to datafiles is possible using the
MySQL command "ALTER TABLE <databasename>.<tablename> ENGINE=InnoDB;",
however this will not shrink the ibdata file and also is not safe to run
on a running Galera cluster for large tables.