Merge branch 'romanzhukov-DOCSUP-12328-upd_materialize_mysql' of https://github.com/Ka1bi4/ClickHouse into romanzhukov-DOCSUP-12328-upd_materialize_mysql

# Conflicts:
#	docs/en/sql-reference/functions/array-functions.md
This commit is contained in:
romanzhukov 2021-08-12 16:28:45 +03:00
commit 7f27d87ad9
4 changed files with 18 additions and 18 deletions

View File

@ -45,10 +45,10 @@ CREATE DATABASE mysql ENGINE = MaterializedMySQL('localhost:3306', 'db', 'user',
**Settings on MySQL-server Side** **Settings on MySQL-server Side**
For the correct work of `MaterializeMySQL`, there are few mandatory `MySQL`-side configuration settings that must be set: For the correct work of `MaterializedMySQL`, there are few mandatory `MySQL`-side configuration settings that must be set:
- `default_authentication_plugin = mysql_native_password` since `MaterializeMySQL` can only authorize with this method. - `default_authentication_plugin = mysql_native_password` since `MaterializedMySQL` can only authorize with this method.
- `gtid_mode = on` since GTID based logging is a mandatory for providing correct `MaterializeMySQL` replication. - `gtid_mode = on` since GTID based logging is a mandatory for providing correct `MaterializedMySQL` replication.
!!! attention "Attention" !!! attention "Attention"
While turning on `gtid_mode` you should also specify `enforce_gtid_consistency = on`. While turning on `gtid_mode` you should also specify `enforce_gtid_consistency = on`.

View File

@ -18,7 +18,7 @@ Checks whether the input string is empty.
empty(x) empty(x)
``` ```
A string is considered non-empty if it contains at least one byte, even if this is a space or a null byte. The UUID is empty if it contains all zeros (zero UUID). A string is considered non-empty if it contains at least one byte, even if this is a space or a null byte.
The function also works for [arrays](array-functions.md#function-empty) or [UUID](uuid-functions.md#empty). The function also works for [arrays](array-functions.md#function-empty) or [UUID](uuid-functions.md#empty).
@ -58,7 +58,7 @@ Checks whether the input string is non-empty.
notEmpty(x) notEmpty(x)
``` ```
A string is considered non-empty if it contains at least one byte, even if this is a space or a null byte. The UUID is empty if it contains all zeros (zero UUID). A string is considered non-empty if it contains at least one byte, even if this is a space or a null byte.
The function also works for [arrays](array-functions.md#function-notempty) or [UUID](uuid-functions.md#notempty). The function also works for [arrays](array-functions.md#function-notempty) or [UUID](uuid-functions.md#notempty).

View File

@ -5,7 +5,7 @@ toc_title: "[experimental] MaterializedMySQL"
# [экспериментальный] MaterializedMySQL {#materialized-mysql} # [экспериментальный] MaterializedMySQL {#materialized-mysql}
**Это экспериментальная функция, которую не следует использовать в продуктивной среде.** **Это экспериментальный движок, который не следует использовать в продуктивной среде.**
Создает базу данных ClickHouse со всеми таблицами, существующими в MySQL, и всеми данными в этих таблицах. Создает базу данных ClickHouse со всеми таблицами, существующими в MySQL, и всеми данными в этих таблицах.
@ -33,7 +33,7 @@ ENGINE = MaterializedMySQL('host:port', ['database' | database], 'user', 'passwo
- `max_bytes_in_buffers` — максимальное количество байтов, которое разрешено кешировать данным в памяти (для базы данных и данных кеша, которые невозможно запросить). При превышении количества строк, данные будут материализованы. Значение по умолчанию: `1 048 576`. - `max_bytes_in_buffers` — максимальное количество байтов, которое разрешено кешировать данным в памяти (для базы данных и данных кеша, которые невозможно запросить). При превышении количества строк, данные будут материализованы. Значение по умолчанию: `1 048 576`.
- `max_flush_data_time` — максимальное время в миллисекундах, в течение которого разрешено кешировать данные в памяти (для базы данных и данных кеша, которые невозможно запросить). При превышении количества указанного периода, данные будут материализованы. Значение по умолчанию: `1000`. - `max_flush_data_time` — максимальное время в миллисекундах, в течение которого разрешено кешировать данные в памяти (для базы данных и данных кеша, которые невозможно запросить). При превышении количества указанного периода, данные будут материализованы. Значение по умолчанию: `1000`.
- `max_wait_time_when_mysql_unavailable` — интервал между повторными попытками, если MySQL недоступен. Указывается в миллисекундах. Отрицательное значение отключает повторные попытки. Значение по умолчанию: `1000`. - `max_wait_time_when_mysql_unavailable` — интервал между повторными попытками, если MySQL недоступен. Указывается в миллисекундах. Отрицательное значение отключает повторные попытки. Значение по умолчанию: `1000`.
- `allows_query_when_mysql_lost`разрешить запрос материализованной таблицы при потере MySQL. Значение по умолчанию: `0` (`false`). - `allows_query_when_mysql_lost`признак, разрешен ли запрос к материализованной таблице при потере соединения с MySQL. Значение по умолчанию: `0` (`false`).
```sql ```sql
CREATE DATABASE mysql ENGINE = MaterializedMySQL('localhost:3306', 'db', 'user', '***') CREATE DATABASE mysql ENGINE = MaterializedMySQL('localhost:3306', 'db', 'user', '***')
@ -44,8 +44,8 @@ CREATE DATABASE mysql ENGINE = MaterializedMySQL('localhost:3306', 'db', 'user',
**Настройки на стороне MySQL-сервера** **Настройки на стороне MySQL-сервера**
Для правильной работы `MaterializeMySQL` следует обязательно указать на сервере MySQL следующие параметры конфигурации: Для правильной работы `MaterializedMySQL` следует обязательно указать на сервере MySQL следующие параметры конфигурации:
- `default_authentication_plugin = mysql_native_password``MaterializeMySQL` может авторизоваться только с помощью этого метода. - `default_authentication_plugin = mysql_native_password``MaterializedMySQL` может авторизоваться только с помощью этого метода.
- `gtid_mode = on` — ведение журнала на основе GTID является обязательным для обеспечения правильной репликации. - `gtid_mode = on` — ведение журнала на основе GTID является обязательным для обеспечения правильной репликации.
!!! attention "Внимание" !!! attention "Внимание"

View File

@ -15,11 +15,11 @@ toc_title: "Функции для работы со строками"
empty(x) empty(x)
``` ```
Строка считается непустой, если содержит хотя бы один байт, пусть даже это пробел или нулевой байт. UUID считается пустым, если он содержит только нули (нулевой UUID). Строка считается непустой, если содержит хотя бы один байт, пусть даже это пробел или нулевой байт.
**Параметры** **Параметры**
- `x` — Входная строка. [Array](../data-types/array.md), [String](../data-types/string.md), [UUID](../data-types/uuid.md). - `x` — Входная строка. [String](../data-types/string.md).
**Возвращаемое значение** **Возвращаемое значение**
@ -50,14 +50,14 @@ SELECT notempty('text');
**Синтаксис** **Синтаксис**
``` sql ``` sql
empty(x) notEmpty(x)
``` ```
Строка считается непустой, если содержит хотя бы один байт, пусть даже это пробел или нулевой байт. UUID считается пустой, если он содержит только нули (нулевой UUID). Строка считается непустой, если содержит хотя бы один байт, пусть даже это пробел или нулевой байт.
**Параметры** **Параметры**
- `x` — Входная строка. [Array](../data-types/array.md), [String](../data-types/string.md), [UUID](../data-types/uuid.md). - `x` — Входная строка. [String](../data-types/string.md).
**Возвращаемое значение** **Возвращаемое значение**
@ -70,15 +70,15 @@ empty(x)
Запрос: Запрос:
```sql ```sql
SELECT empty(''); SELECT notEmpty('text');
``` ```
Результат: Результат:
```text ```text
┌─empty('')─┐ ┌─notEmpty('text')─┐
│ 1 │ 1 │
└───────────┘ └──────────────────
``` ```
## length {#length} ## length {#length}