我们将使用下一个堆栈:Tomcat 8 / Java 8 buildpacked + ELK + S3 + Maria DB。
我们准备好了我们的软件包和部署过程,但我们仍然坚持配置Maria DB。更具体地说,我们至少需要在Maria(Mysql)的my.cnf文件中设置下一个参数:
lower_case_table_names = 1
transaction-isolation = READ-COMMITTED
collation-server = utf8_general_ci
character-set-server = utf8
有谁知道怎么做?因为我们发现只能使用的东西是瑞士通信手册 - > https://docs.developer.swisscom.com/devguide/services/managing-services.html"更新服务实例"部分,但没有机会找到可以使用的Maria DB服务参数。
答案 0 :(得分:3)
Swisscom的MariaDB产品是为所有客户共享的Galera集群。客户拥有自己的数据库。
客户无法修改全局my.cnf
参数。每个客户的全局配置都是相同的。
该团队目前正在优化Galera集群,敬请关注,很快,默认的MariaDB参数对DBaaS来说会好得多。你仍然无法修改全局变量。
客户可以修改session variables
存在两个系统变量的范围。全局变量 影响服务器的整体运行。会话变量影响 它针对个人客户端连接的操作。给定的系统 变量可以同时具有全局值和会话值。
大多数(并非所有)变量也可以在会话级别定义。
更具针对您的问题
您可以在代码中为每个交易设置首选级别
SET TRANSACTION ISOLATION LEVEL READ-COMMITTED;
变量lower_case_table_names只有全局范围,您无法在每个会话中设置它。
Variable Scope Global
> show global variables like 'lower_case_table_names';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_table_names | 0 |
+------------------------+-------+
1 row in set (0.00 sec)
可以为每个表设置字符集和排序规则。见Table Character Set and Collation
每个表都有一个表格字符集和一个表格排序规则。 CREATE TABLE
和ALTER TABLE
语句具有用于指定表字符集和排序规则的可选子句。