Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
75:system_requirements_mysql [2020/06/09 11:15] ndn75:system_requirements_mysql [2024/02/16 18:23] (current) – [Required MySQL permissions] emr
Line 1: Line 1:
 ====== MySQL Requirements ====== ====== MySQL Requirements ======
 +
 +===== Native MySQL installation =====
  
 Stages supports MySQL 5.7 and 8.0 Community Editions. Stages supports MySQL 5.7 and 8.0 Community Editions.
  
-The transaction isolation must be set to "READ-COMMITTED" in my.cnf.+The following settings are highly recommended:
  
-Increase the "innodb_lock_wait_timeout" system variable when you encounter "Lock wait timeout exceedederrors.+<code> 
 +character-set-server=utf8 
 +max_allowed_packet=500M 
 +innodb_lock_wait_timeout=600 
 +transaction-isolation=READ-COMMITTED 
 +lower_case_table_names=1 
 +sql-mode = "STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION" 
 +default-time-zone="+00:00" 
 + 
 +</code>
  
 Stages uses the INNODB engine. This can have impact on the server backup strategy, because INNODB files tend to become very large. Stages uses the INNODB engine. This can have impact on the server backup strategy, because INNODB files tend to become very large.
Line 12: Line 23:
  
 The Windows 7 search feature causes the same kind of problems as a virus scanner. Please disable this feature on the Stages server. The Windows 7 search feature causes the same kind of problems as a virus scanner. Please disable this feature on the Stages server.
 +
 +
 +===== Azure MySQL DB =====
 +
 +For installing Stages with the Azure MySQL DB, all of the above applies as well.
 +
 +In addition, the l''og_bin_trust_function_creators'' parameter of Azure MySQL DB must be set to 1. See [[https://stackoverflow.com/questions/11601692/mysql-amazon-rds-error-you-do-not-have-super-privileges|here for more info]].
 +
 +The connection timeout for Azure MySQL DB might be set very low. If you see connection errors after a while, you should set the connection timeout for Stages to 100 seconds via<code>
 +
 +torque.database.default.expiryTime=100000
 +
 +</code>
 +
 +in ''database.properties''.
 +===== AWS RDS for MySQL =====
 +
 +All of the native MySQL and Azure MySQL DB requirements from above also apply to AWS RDS.
 +
 +===== Required MySQL permissions =====
 +
 +The Stages user needs the following permissions for the database that is configured in database.properties
 +
 +  * ALTER, CREATE, DELETE, DROP, INDEX, INSERT, REFERENCES, SELECT, TRIGGER, UPDATE
 +
 +Additionally, one of the following is required:
 +
 +  * The SUPER privilege, globally: \\ ''GRANT SUPER ON *.* TO 'stages'@'localhost';''
 +  * If this is not desirable, binary logging has to be disabled. Add the following line to the MySQL configuration file: \\ ''disable_log_bin=1''