Swisscom 云上的 Mariadb 配置
Maria DB configuration on Swisscom cloud
我们将使用下一个堆栈:Tomcat8/Java8 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
有人知道怎么做吗?因为我们发现唯一可以使用的是 Swisscom 手册中的下一个 ->
https://docs.developer.swisscom.com/devguide/services/managing-services.html "Update a Service Instance" 部分,但没有机会找到可以使用的 Maria DB 服务参数。
Swisscom 的 MariaDB 产品是为所有客户共享的 Galera 集群。客户有自己的数据库。
客户无法修改全局 my.cnf
参数。每个客户的全局配置都是相同的。
团队目前正在优化Galera集群,敬请期待,很快默认的MariaDB参数将更适合DBaaS。仍然不能修改全局变量。
客户可以修改session variables
There are two scopes in which system variables exist. Global variables
affect the overall operation of the server. Session variables affect
its operation for individual client connections. A given system
variable can have both a global and a session value.
大多数(不是全部)变量也可以在会话级别定义。
更具体地回答你的问题
您可以在代码中为每笔交易设置首选级别
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都可以设置字符集和排序规则。参见 Table Character Set and Collation
每个 table 都有一个 table 字符集和一个 table 排序规则。 CREATE TABLE
和 ALTER TABLE
语句具有用于指定 table 字符集和排序规则的可选子句。
我们将使用下一个堆栈:Tomcat8/Java8 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
有人知道怎么做吗?因为我们发现唯一可以使用的是 Swisscom 手册中的下一个 -> https://docs.developer.swisscom.com/devguide/services/managing-services.html "Update a Service Instance" 部分,但没有机会找到可以使用的 Maria DB 服务参数。
Swisscom 的 MariaDB 产品是为所有客户共享的 Galera 集群。客户有自己的数据库。
客户无法修改全局 my.cnf
参数。每个客户的全局配置都是相同的。
团队目前正在优化Galera集群,敬请期待,很快默认的MariaDB参数将更适合DBaaS。仍然不能修改全局变量。
客户可以修改session variables
There are two scopes in which system variables exist. Global variables affect the overall operation of the server. Session variables affect its operation for individual client connections. A given system variable can have both a global and a session value.
大多数(不是全部)变量也可以在会话级别定义。
更具体地回答你的问题
您可以在代码中为每笔交易设置首选级别
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都可以设置字符集和排序规则。参见 Table Character Set and Collation
每个 table 都有一个 table 字符集和一个 table 排序规则。 CREATE TABLE
和 ALTER TABLE
语句具有用于指定 table 字符集和排序规则的可选子句。