这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

配置过程

此部分介绍设置 Vertica 数据库所需的任务。我们假设您拥有有效许可证密钥文件,已安装 Vertica rpm 包,并且已按照所述运行安装脚本。

您使用以下工具完成配置过程:

继续配置

按照此部分所述的顺序完成配置过程。

Vertica 强烈建议您先尝试创建和配置数据库

您可以在开发过程中多次使用此通用配置过程,也可以在每次使用时对其进行修改以便符合不断变化的目标。您可以忽略准备实际数据文件和示例查询等步骤,并运行 Database Designer,而无需针对查询进行优化。例如,对于开发和测试,您可以创建、加载和查询数据库多次,并在最后一次时创建并加载生产数据库。

1 - 准备磁盘存储位置

必须创建并指定目录,以便在其中存储编录和数据文件( 物理架构)。可以在安装或配置数据库时,或以后在数据库操作期间指定这些位置。编录和数据目录都必须归 数据库超级用户所有。

为数据库编录文件指定的目录(目录路径)将跨群集中的所有节点使用。例如,如果指定 /home/catalog 作为编录目录,Vertica 将在所有节点上使用该编录路径。编录目录应始终与任何数据文件目录相分离。

指定的数据路径也将跨群集中的所有节点使用。指定应该将数据存储在 /home/data 后,Vertica 将在所有数据库节点上使用此路径。

不要使用单个目录包含编录和数据文件。可以在不同的驱动器上存储编录和数据目录,这些目录可能位于主机的本地驱动器(建议用于编录目录)或共享存储位置(例如外部磁盘存储模块或 SAN)上。

在指定编录或数据路径之前,确保数据库的所有节点上都存在父目录。在 admintools 中创建数据库还会创建编录和数据目录,但每个节点上必须存在父目录。

安装期间无需指定磁盘存储位置。但可以通过在 install_vertica 脚本中使用 --data-dir 参数来执行该操作。请参阅在安装期间指定磁盘存储位置

1.1 - 指定数据库创建期间的磁盘存储位置

当您在 管理工具中调用创建数据库命令时,有个对话框允许您指定编录和数据位置。群集中的每个主机上都必须存在这些位置,并且这些位置必须归数据库管理员所有。

数据库数据目录

当单击确定 (OK) 时,Vertica 会自动创建以下子目录:

catalog-pathname/database-name/node-name_catalog/data-pathname/database-name/node-name_data/

例如,如果将 /home/dbadmin 的默认值(数据库管理员的主目录)用于 Stock Exchange 示例数据库,则将在群集中的每个节点上创建如下所示的编录和数据目录:

/home/dbadmin/Stock_Schema/stock_schema_node1_host01_catalog/home/dbadmin/Stock_Schema/stock_schema_node1_host01_data

注意

  • 编录和数据路径名称只能包含字母数字字符,不能有前置空格字符。如果不能遵守这些限制条件,将导致数据库创建失败。

  • 如果其他数据库正在使用目录,Vertica 将拒绝覆盖目录。因此,如果您创建了一个用于评估的数据库,然后删除了该数据库,而您想要再使用该数据库名称,请确保您已彻底清理先前使用的磁盘存储位置。有关详细信息,请参阅管理存储位置

1.2 - 指定 MC 上的磁盘存储位置

可采用以下方法,使用 MC 界面指定在群集中存储数据库元数据的位置:

  • 首次配置 MC 时

  • 创建在 MC 上使用的新数据库时

另请参阅

配置管理控制台

1.3 - 配置磁盘使用情况以优化性能

创建初始存储位置之后,以后可以向数据库中添加其他存储位置。此操作不仅可以提供更多空间,还可以用于通过隔离具有不同 I/O 或访问模式的文件来控制磁盘使用情况并提高 I/O 性能。例如,考虑:

  • 通过为 临时空间创建单独的存储位置,将执行引擎临时文件与数据文件隔离。

  • 创建设置了标签的存储位置和存储策略,其中选定的数据库对象基于测量的性能统计信息或预测的访问模式而存储在不同存储位置。

另请参阅

管理存储位置

1.4 - 与 Vertica 一起使用共享存储

如果使用共享 SAN 存储,请确保在磁盘空间或宽带的节点之间不存在资源争夺情况。

  • 每个主机必须拥有其自己的编录和数据位置。主机不能共享编录或数据位置。

  • 配置存储,以便每个节点都有足够的 I/O 带宽来单独访问存储。

1.5 - 查看数据库存储信息

您可以通过 管理控制台在 Vertica 群集上查看节点特定信息。有关详细信息,请参阅使用 MC 进行监控

1.6 - 防病毒扫描排除项

您应从防病毒扫描中排除 Vertica 编录和数据目录。某些防病毒产品已被识别为针对 Vertica 目录,有时会锁定或删除其中的文件。这将对 Vertica 性能和数据完整性产生不利影响。

已识别的防病毒产品包括:

  • ClamAV

  • SentinelOne

  • Sophos

  • Symantec

  • Twistlock

2 - Vertica 的磁盘空间要求

除了数据库中存储的实际数据外,Vertica 对若干数据重组操作均需磁盘空间,如 合并和在群集中管理节点。为获得最佳结果,Vertica 建议对于 K-安全=1 的数据库,每个节点的磁盘利用率不超过百分之六十 (60%) 以允许此类操作继续。

此外,某些查询执行运算符(如哈希联接和排序)若无法在内存 (RAM) 中完成,还会临时需要磁盘空间。您在查询、恢复、刷新投影等过程中可能会遇到此类运算符。所需的磁盘空间量(称为 临时空间)取决于查询性质、节点上的数据量以及系统上的并发用户数。默认情况下,数据磁盘上的任何未用磁盘空间均可用作临时空间。但是,Vertica 建议配置与数据磁盘空间分开的临时空间。

另请参阅

配置磁盘使用情况以优化性能

3 - 管理控制台的磁盘空间要求

您可以在群集的任何节点上安装管理控制台,所以除了为数据库群集分配的磁盘空间外,它没有其他特殊的磁盘要求。

4 - 准备逻辑架构脚本

为 Vertica 数据库设计逻辑架构与为任何其他 SQL 数据库设计逻辑架构无任何区别。设计逻辑架构中更完整地描述了详细信息。

要创建逻辑架构,请准备一个 SQL 脚本(纯文本文件,扩展名通常为 .sql)以执行下列操作:

  1. 创建其他架构(根据需要)。请参阅使用多个架构

  2. 使用 CREATE TABLE 命令在数据库中创建表和列 约束

  3. 使用 ALTER TABLE 命令定义必要的表约束。

  4. 使用 CREATE VIEW 命令定义表上的任何视图。

可使用下列项生成脚本:

  • 架构设计器应用程序。

  • 从现有数据库提取的架构。

  • 文本编辑器。

  • 作为模板的数据库 example-name_define_schema.sql 脚本之一。(请参阅 /opt/vertica/examples 中的示例数据库目录。)

在您的脚本文件中,请确保以下几点:

  • 每个语句均以分号结尾。

  • 您使用 Vertica 支持的 数据类型,如《SQL 参考手册》中所述。

创建数据库后,可通过执行架构脚本来对其进行测试,如创建逻辑架构中所述。如果遇到错误,请删除所有表,更正错误,然后再次运行脚本。

5 - 准备数据文件

准备两个数据文件集:

  • 测试数据文件。在完成部分数据加载后,使用测试文件来测试数据库。如果可以,使用部分实际数据文件来准备测试数据文件。

  • 实际数据文件。测试并优化数据库之后,将您的数据文件用于初始数据加载

如何命名数据文件

可以命名每个数据文件,使其与逻辑架构中的相应表匹配。不用区分大小写。

可以使用扩展名 .tbl 或者希望使用的任何名称。例如,如果表的名称为 Stock_Dimension,则相应数据文件的名称应为 stock_dimension.tbl。当使用多个数据文件时,可在文件名称后附加 _nnn(其中 nnn 是 001 至 999 之间的正整数)。例如,stock_dimension.tbl_001stock_dimension.tbl_002 以此类推。

6 - 准备加载脚本

准备 SQL 脚本以使用 vsql 上的 COPY 或通过 ODBC 将数据直接加载到物理存储中。

您需要加载下列项的脚本:

  • 大型表

  • 小型表

Vertica 建议您使用多个文件来加载大型表。要测试加载过程,请使用大小为 10GB 至 50GB 的文件。该大小具有以下优势:

  • 可使用数据文件之一作为 Database Designer 的示例数据文件。

  • 可以仅加载足够的数据来执行部分数据加载,然后再加载剩余数据。

  • 如果单个加载失败并回退,您不会浪费过多时间。

  • 测试加载过程之后,对于多太字节表,请以 250–500GB 的文件大小中断完全加载。

另请参阅

7 - 创建可选的示例查询脚本

示例查询脚本用于测试架构和加载脚本中是否有错误。

包括您的用户希望针对数据库运行的查询的示例。如果没有执行任何真正的查询,仅编写可收集每个表的计数的简单 SQL。或者,您可以跳过此步骤。

8 - 创建空数据库

有两种方法可以创建空数据库:

尽管可以创建多个数据库(例如,一个用于生产,一个用于测试),安装的每个 Vertica 分析数据库只能有一个活动数据库。

8.1 - 创建数据库名称和密码

数据库名称

数据库名称必须遵循以下规则:

  • 1-30 个字符

  • 以字母开头

  • 后跟字母(大写和小写)、数字和/或下划线的任意组合。

数据库名称区分大小写;但是,Vertica 强烈建议您不要使用仅大小写不同的名称创建数据库。例如,请勿创建名称分别为 mydatabaseMyDataBase 的两个数据库。

数据库密码

数据库密码可以包含字母、数字和下表中列出的特殊字符。密码不能包含非 ASCII Unicode 字符。

允许的密码长度介于 0-100 个字符之间。数据库超级用户可以使用 ALTER PROFILE 更改 Vertica 用户的最大密码长度。

您可以使用 配置文件 配置文件指定和控制密码定义。例如,配置文件可以定义密码的最大长度、重用次数、最小数字或所需位数以及其他详细信息。

下表列出了 Vertica 允许在数据库密码中使用的特殊 (ASCII) 字符。特殊字符可以出现在密码字符串的任何位置。例如,mypas$word$mypassword 都是有效的。

另请参阅

8.2 - 使用管理工具创建数据库

  1. 管理主机中运行 管理工具,如下所示:

    $ /opt/vertica/bin/admintools
    

    如果您正在使用远程终端应用程序,如 PuTTY 或 Cygwin bash shell,请参阅远程终端用户须知

  2. 接受许可协议并指定许可证文件的位置。有关详细信息,请参阅 管理许可证

    仅当您第一次运行管理工具时,才需要执行此步骤

  3. 在“主菜单 (Main Menu)”上,单击配置菜单 (Configuration Menu),然后单击确定 (OK)

  4. 在“配置菜单 (Configuration Menu)”上,单击创建数据库 (Create Database),然后单击确定 (OK)

  5. 输入数据库名称和可选注释,然后单击确定 (OK)。有关命名准则和限制,请参阅创建数据库名称和密码

  6. 为数据库设立超级用户密码。

    • 要提供一个密码,请输入该密码,然后单击确定 (OK)。再次输入以确认该密码,然后单击确定 (OK)

    • 如果不想提供密码,请将其留空,然后单击确定 (OK)。如果不设置密码,Vertica 会提示您确认您确实不想为此数据库设立超级用户密码。单击是 (Yes) 创建没有密码的数据库,或者单击否 (No) 设立密码。

  7. 从安装 Vertica ( install_vertica -s) 时指定的主机列表中选择要包括在数据库中的主机,然后单击确定 (OK)

  8. 指定用于存储数据和 编录文件的目录,然后单击确定 (OK)

  9. 编录和数据路径名称只能包含字母数字字符,不能有前置空格。如果不能遵守这些限制条件,将导致数据库创建失败。

    例如:

    编录路径名: /home/dbadmin

    数据路径名: /home/dbadmin

  10. 查看当前数据库定义 (Current Database Definition) 屏幕,确认它表示您要创建的数据库,然后单击是 (Yes) 继续操作,或者单击否 (No) 修改数据库定义。

  11. 如果单击是 (Yes),Vertica 会创建您定义的数据库,然后显示一条消息,指示已成功创建数据库。

  12. 单击确定 (OK) 确认消息。

9 - 创建逻辑架构

  1. 连接到数据库

    在管理工具的“主菜单 (Main Menu)”上,单击连接到数据库 (Connect to Database),再单击确定 (OK)

    有关详细信息,请参阅连接到数据库

    将显示 vsql 欢迎脚本:

    Welcome to vsql, the Vertica Analytic Database interactive terminal.
    Type:  \h or \? for help with vsql commands
           \g or terminate with semicolon to execute query
           \q to quit
    
    =>
    
  2. 运行逻辑架构脚本

    在 vsql 中使用 \i meta-command 运行早前准备的 SQL 逻辑架构脚本

  3. 与数据库断开连接

    在 vsql 中使用 \q meta-command 返回管理工具。

10 - 执行部分数据加载

Vertica 建议,针对大型表,应首先执行部分数据加载并对数据库进行测试,然后再完成全部数据加载。此加载应加载具有代表性的数据量。

  1. 加载小型表。

    使用 SQL 加载脚本和您之前准备的数据文件来加载小型表数据文件。

  2. 部分加载大型表。

    使用 SQL 加载脚本和您之前准备的数据文件为每个表加载 10GB 到 50GB 的表数据。

有关投影的详细信息,请参阅投影

11 - 测试数据库

测试数据库以验证其是否正在按照预期效果运行。

检查查询是否存在语法错误并检查执行时间。

  1. 使用 vsql \timing meta-command 启用查询执行时间的显示(单位为毫秒)。

  2. 执行您先前准备的 SQL 示例查询脚本。

  3. 执行多个临时查询。

12 - 优化查询性能

优化数据库由优化压缩和调优查询组成。(请参阅创建数据库设计。)

要优化数据库,请使用 Database Designer 创建和部署一个用于优化数据库的设计。请参阅使用 Database Designer 创建完整的设计

运行 Database Designer 后,使用查询优化中介绍的技巧来提高某些查询类型的性能。

13 - 完成数据加载

要完成加载:

  1. 监控系统资源使用情况。

    当加载脚本运行时,继续运行 topfreedf 实用程序并观察(如监控 Linux 资源使用情况中所述)。可以在群集中的任意节点或所有节点上执行此操作。确保系统未过度交换(查看 top 中的 kswapd )或耗尽交换空间(查看是否有大量可用交换空间已使用)。

  2. 完成大型表加载。

    运行剩余大型表加载脚本。

14 - 测试优化的数据库

可通过检查查询执行时间来测试优化的设计:

  1. 使用 vsql \timing 元命令启用查询执行时间(以毫秒为单位)的显示。

    执行 SQL 示例查询脚本,以测试架构和加载脚本中是否有错误。

  2. 执行多个临时查询

    1. 运行 管理工具并选择连接到数据库 (Connect to Database)

    2. 使用 \i meta-command 执行查询脚本;例如:

      vmartdb=> \i vmart_query_03.sql  customer_name   | annual_income
      ------------------+---------------
       James M. McNulty |        999979
       Emily G. Vogel   |        999998
      (2 rows)
      Time: First fetch (2 rows): 58.411 ms. All rows formatted: 58.448 ms
      vmartdb=> \i vmart_query_06.sql
       store_key | order_number | date_ordered
      -----------+--------------+--------------
              45 |       202416 | 2004-01-04
             113 |        66017 | 2004-01-04
             121 |       251417 | 2004-01-04
              24 |       250295 | 2004-01-04
               9 |       188567 | 2004-01-04
             166 |        36008 | 2004-01-04
              27 |       150241 | 2004-01-04
             148 |       182207 | 2004-01-04
             198 |        75716 | 2004-01-04
      (9 rows)
      Time: First fetch (9 rows): 25.342 ms. All rows formatted: 25.383 ms
      

数据库优化后,应高效地运行查询。如果发现要优化的查询,可以对设计进行逐步修改和更新。

15 - 为国际数据集实施区域设置

区域设置指定用户的语言、所在国家/地区以及任何特殊的可变首选项(例如排序规则)。Vertica 会根据区域设置确定某些字符串函数的行为。此外,区域设置还确定了需要进行排序和比较的各种 SQL 命令(例如聚合 GROUP BYORDER BY 子句、联接和分析 ORDER BY 子句)的排序规则。

Vertica 数据库的默认区域设置为 en_US@collation=binary(美国英语)。可以定义供数据库中的所有会话使用的新默认区域设置,也可以覆盖单个会话的区域设置。但是,无论会话排序规则如何,请始终采用默认 en_US@collation=binary 排序规则来对投影进行排序。特定区域设置的排序功能会在查询时应用。

如果您将区域设置设为 NULL,则 Vertica 会将区域设置设为 en_US_POSIX。您可以通过发出 vsql 元命令 \locale 将区域设置设回默认区域设置和排序规则。例如:

可以通过 ODBCJDBCADO.net 设置区域设置。

ICU 区域设置支持

Vertica 将 ICU 库用于区域设置支持;您必须使用 ICU 区域设置语法指定区域设置。数据库会话使用的区域设置并非来源于操作系统(通过 LANG 变量),因此 Vertica 建议您为运行 vsql 的每个节点设置 LANG,如下一个部分所述。

虽然 ICU 库可以指定排序规则、货币和日历首选项,但 Vertica 仅支持排序规则组件。与排序规则无关的任何关键字都将被拒绝。无论会话排序规则如何,始终使用 en_US@collation=binary 排序规则对投影进行排序。特定区域设置的排序功能会在查询时应用。

SET DATESTYLE TO ... 命令提供了日历的一些方面,但 Vertica 仅支持将美元作为货币。

为会话更改 DB 区域设置

此示例将会话区域设置设置为“泰语(Thai)”。

  1. 在操作系统级别,针对每个运行 vsql 的节点,按照以下方式将 LANG 变量设置为区域设置语言:

    export LANG=th_TH.UTF-8
    
  2. 针对每个 Vertica 会话(从 ODBC/JDBC 或 vsql 中),设置语言区域设置。

    从 vsql 中:

    \locale th_TH
    
  3. 从 ODBC/JDBC 中:

    "SET LOCALE TO th_TH;"
    
  4. 在 PUTTY(或 ssh 终端)中,按照以下步骤更改设置:

    settings > window > translation > UTF-8
    
  5. 单击应用 (Apply),然后单击保存 (Save)

加载的所有数据必须采用 UTF-8 格式而非 ISO 格式,如分隔数据中所述。与 UTF-8 不兼容的字符集(例如 ISO 8859-1 (Latin1))不受支持,因此 SUBSTRING 等函数对于多字节字符而言无法正常工作。因此,区域设置的设置应无法正常工作。如果转换设置 ISO-8859-11:2001 (Latin/Thai) 正常工作,则表示未正确加载数据。要正确转换数据,请使用一个实用程序,例如 Linux iconv

另请参阅

15.1 - 为数据库指定默认区域设置

启动数据库之后,默认区域设置配置参数 DefaultSessionLocale 会设置初始区域设置。您可以覆盖各个会话的这个值。

要为数据库设置区域设置,请按照以下方式使用配置参数:

=> ALTER DATABASE DEFAULT SET DefaultSessionLocale = 'ICU-locale-identifier';

例如:

=> ALTER DATABASE DEFAULT SET DefaultSessionLocale = 'en_GB';

15.2 - 为会话覆盖默认区域设置

您可以通过两种方式覆盖当前会话的默认区域设置:

  • VSQL 命令 \locale。例如:

    => \locale en_GBINFO:
    INFO 2567:  Canonical locale: 'en_GB'
    Standard collation: 'LEN'
    English (United Kingdom)
    
  • SQL 语句 SET LOCALE。例如:

    
    => SET LOCALE TO en_GB;
    INFO 2567:  Canonical locale: 'en_GB'
    Standard collation: 'LEN'
    English (United Kingdom)
    

这两种方法都接受区域设置的形式和形式。例如:

=> SET LOCALE TO LEN;
INFO 2567:  Canonical locale: 'en'
Standard collation: 'LEN'
English

=> \locale LEN
INFO 2567:  Canonical locale: 'en'
Standard collation: 'LEN'
English

另请参阅

15.3 - 服务器区域设置与客户端区域设置

Vertica 将数据库服务器的区域设置与客户端应用程序的区域设置区分开来:

  • 服务器区域设置仅影响服务器端查询处理的排序行为。

  • 客户端应用程序将验证区域设置是否适当,以正确显示字符。

以下部分描述了最佳实践,以确保可预测的结果。

服务器区域设置

服务器会话的区域设置应按照为数据库指定默认区域设置中所述进行设置。如果不同会话的区域设置不同,请的每个会话开始时,从客户端设置服务器的区域设置。

vsql 客户端

  • 如果数据库没有默认的会话区域设置,请将会话的服务器区域设置设置为所需的区域设置

  • 运行 vsql 客户端的终端仿真器中的区域设置应该设置为等同于服务器端的会话区域设置(ICU 区域设置)。这样就能在服务器上正确排序数据,并在客户端上正确显示数据。

  • vsql 的所有输入数据应该为 UTF-8,而所有输出数据都以 UTF-8 进行编码。

  • Vertica 不支持非 UTF-8 编码和关联的区域设置值;

  • 有关设置区域设置和编码的说明,请参阅终端仿真器文档。

ODBC 客户端

  • ODBC 应用程序可以采用 ANSI 或 Unicode 模式。如果用户应用程序采用 Unicode,ODBC 使用的编码是 UCS-2。如果用户应用程序采用 ANSI,数据必须为单字节 ASCII,这与数据库服务器上使用的 UTF-8 兼容。向 Vertica 服务器传递数据时,ODBC 驱动程序会将 UCS-2 转换为 UTF-8,并会将 Vertica 服务器发来的数据从 UTF-8 转换为 UCS-2。

  • 如果用户应用程序尚未采用 UCS-2,应用程序必须将输入数据转换为 UCS-2,否则会发生异常结果。例如:

    • 对于传递到 ODBC API 的非 UCS-2 数据,当它被解释为 UCS-2 时,它可能会导致无效的 UCS-2 符号传递给 API,从而导致错误。

    • 在备用编码中提供的符号可以是有效的 UCS-2 符号。如果发生这种情况,则会将不正确的数据插入数据库。

  • 如果数据库没有默认会话区域设置,ODBC 应用程序应该使用 SQLSetConnectAttr 来设置所需的服务器会话区域设置(如果它不同于数据库范围设置)。这样可以在服务器上实现预期的排序规则以及字符串函数行为。

JDBC 和 ADO.NET 客户端

  • JDBC 和 ADO.NET 应用程序使用 UTF-16 字符集编码并负责将任何非 UTF-16 编码数据转换为 UTF-16。如果违反此编码,同样的警告也适用于 ODBC。

  • 在传递到 Vertica 服务器并将 Vertica 服务器发送的数据从 UTF-8 转换为 UTF-16 时,JDBC 和 ADO.NET 驱动程序会将 UTF-16 数据转换为 UTF-8。

  • 如果在数据库级别没有默认会话区域设置,JDBC 和 ADO.NET 应用程序应该通过执行 SET LOCALE TO 命令设置正确的服务器会话区域设置,以便在服务器上实现预计的排序规则以及字符串函数行为。有关详细信息,请参阅SET LOCALE

16 - 更改事务隔离级别

默认情况下,Vertica 对所有会话使用 READ COMMITTED 隔离级别。您可以更改数据库或给定会话的默认隔离级别。

事务将保留其隔离级别直至其完成,即使在事务处理期间会话的隔离级别发生更改也是如此。Vertica 内部进程(例如 Tuple Mover刷新操作)以及 DDL 操作始终以 SERIALIZABLE 隔离级别运行以确保一致性。

数据库隔离级别

配置参数 TransactionIsolationLevel 将指定数据库隔离级别,并用作所有会话的默认值。使用 ALTER DATABASE 更改默认隔离级别。例如:

=> ALTER DATABASE DEFAULT SET TransactionIsolationLevel = 'SERIALIZABLE';
ALTER DATABASE
=> ALTER DATABASE DEFAULT SET TransactionIsolationLevel = 'READ COMMITTED';
ALTER DATABASE

数据库隔离级别的更改仅适用于将来的会话。现有会话及其事务会继续使用原始隔离级别。

使用 SHOW CURRENT 查看数据库隔离级别:

=> SHOW CURRENT TransactionIsolationLevel;
  level   |           name            |    setting
----------+---------------------------+----------------
 DATABASE | TransactionIsolationLevel | READ COMMITTED
(1 row)

会话隔离级别

SET SESSION CHARACTERISTICS AS TRANSACTION 更改特定会话的隔离级别。例如:

=> SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE;
SET

使用 SHOW 查看当前会话的隔离级别:

=> SHOW TRANSACTION_ISOLATION;

另请参阅

事务