Spec-Zone.ru › MariaDB

Тестирование подключений к S3

MariaDB, начиная с 10.5

Двигатель хранения S3 доступен с MariaDB 10.5.4.

Если у вас не получается заставить работать двигатель хранения S3, вот несколько шагов, которые помогут определить возможную причину проблемы.

Переменные подключения к S3

В большинстве случаев проблема заключается в правильной настройке переменных подключения к S3.

Переменные:

  • s3_access_key: Ключ доступа AWS для доступа к данным
  • s3_secret_key: Секретный ключ AWS для доступа к данным
  • s3_bucket: Ведро AWS, в котором должны храниться ваши данные. Все данные таблиц MariaDB хранятся в этом ведре.
  • s3_region: Регион AWS, в котором должны храниться ваши данные.
  • s3_host_name: Имя хоста для сервиса S3.
  • s3_protocol_version: Протокол, используемый для связи с S3. Один из "Amazon" или "Original"

Существует несколько способов убедиться, что вы правильно их задали:

Использование aria_s3_copy для проверки подключения

aria_s3_copy — инструмент, позволяющий копировать таблицы aria в S3 и из S3. Он полезен для проверки подключения, так как позволяет указать все параметры s3 в командной строке.

Выполните следующие SQL-команды для создания тривиальной SQL-таблицы:

use test;
create table s3_test (a int) engine=aria row_format=page transactional=0;
insert into s3_test values (1),(2);
flush tables s3_test;

Теперь вы можете использовать инструмент aria_s3_copy для копирования этого в S3 из вашей оболочки/командной строки:

shell> cd mariadb-data-directory/test
shell> aria_s3_copy --op=to --verbose --force --**other*options* s3_test.frm

Copying frm file s3_test.frm
Copying aria table: test.s3_test to s3
Creating aria table information test/s3_test/aria
Copying index information test/s3_test/index
Copying data information test/s3_test/data

Как видно из вышесказанного, aria_s3_copy использует текущую директорию в качестве имени базы данных.

Вы также можете установить параметры aria_s3_copy в файле my.cnf, чтобы избежать набора текста.

Использование mysql-test-run для проверки подключения и двигателя хранения S3

Можно использовать систему тестов MariaDB mysql-test-run для выполнения всех стандартных тестов S3 на вашем хранилище S3.

Для этого необходимо найти директорию mysql-test в вашей системе и cd к ней.

Файл конфигурации для системы тестирования S3 находится по адресу suite/s3/my.cnf. Для активации тестирования необходимо отредактировать этот файл и добавить параметры подключения S3 в конец файла. После редактирования он должен выглядеть примерно так:

!include include/default_mysqld.cnf
!include include/default_client.cnf

[mysqld.1]
s3=ON
#s3-host-name=s3.amazonaws.com
#s3-protocol-version=Amazon
s3-bucket=MariaDB
s3-access-key=
s3-secret-key=
s3-region=

Вы должны задать значения для s3-access-key, s3-secret-key и s3-region, которые отражают вашего поставщика S3. Имя s3-bucket, определяется вашим администратором.

Если вы не используете Amazon Web Services в качестве своего поставщика S3, вы также должны указать s3-hostname и, возможно, изменить s3-protocol-version на "Original".

Теперь вы можете проверить конфигурацию:

shell> cd **mysql-test** directory
shell> ./mysql-test-run --suite=s3
...
s3.no_s3                                 [ pass ]      5
s3.alter                                 [ pass ]  11073
s3.arguments                             [ pass ]   2667
s3.basic                                 [ pass ]   2757
s3.discovery                             [ pass ]   7851
s3.select                                [ pass ]   1325
s3.unsupported                           [ pass ]    363

Обратите внимание, что в вашем выводе может быть больше тестов, так как мы постоянно добавляем больше тестов для S3 по мере необходимости.

Дальнейшие действия

Когда подключение заработает, добавьте параметры в ваш глобальный файл my.cnf. Теперь вы можете начать тестирование S3 с помощью mysql-клиента, преобразовав некоторые существующие таблицы в S3 с помощью ALTER TABLE ... ENGINE=S3.

См. также

  • Использование двигателя хранения S3
  • Использование MinIO с mysql-test-run для тестирования двигателя хранения S3
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется предварительно MariaDB. Мнения, информация и мнения, выраженные в этом контенте, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/testing-the-connections-to-s3/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API