Documentation Home
MySQL 外壳 8.0  / 第 4 章 MySQL Shell 入门  / 4.3 MySQL Shell 连接  / 4.3.6 使用压缩连接  /  4.3.6.2 MySQL Shell 8.0.14 到 8.0.19 的压缩控制

4.3.6.2 MySQL Shell 8.0.14 到 8.0.19 的压缩控制

在 MySQL Shell 8.0.14 到 8.0.19 的版本中,只能为使用经典 MySQL 协议的连接请求压缩。默认是不请求压缩。这些版本中的压缩使用 zlib 压缩算法。您不能在这些版本中要求压缩,因此如果服务器不支持压缩,会话将回退到未压缩的连接。

在这些 MySQL Shell 版本中,压缩控制仅限于为连接启用(通过指定true)或禁用(通过指定false)压缩。如果您使用具有此压缩控制的 MySQL Shell 版本连接到 MySQL 8.0.18 或更高版本的服务器实例,其中支持压缩算法的客户端请求,启用压缩等同于提出算法集 zlibuncompressed

MySQL Shell 不能在 8.0.14 之前的版本中请求压缩。

要请求压缩 MySQL Shell 8.0.14 到 8.0.19 中的连接,请使用以下方法之一:

  • 如果从命令行启动 MySQL Shell 并使用单独的命令选项指定连接参数,请使用--compress ( -C) 选项,例如:

    $> mysqlsh --mysql -u user -h localhost -C
  • 如果您使用类似 URI 的连接字符串来指定连接参数,无论是从命令行、MySQL Shell 的\connect命令还是shell.connect()方法,请compression=true在查询字符串中使用参数:

    mysql-js> \connect user@example.com?compression=true
    $> mysqlsh mysql://user@localhost:3306?compression=true
  • 如果您使用键值对指定连接参数,无论是使用 MySQL Shell 的 \connect命令还是 mysql.getClassicSession()方法,请使用compression选项字典中的参数:

    mysql-js> var s1=mysql.getClassicSession({host: 'localhost',
                                              user: 'root',
                                              password: 'password',
                                              compression: 'true'});