Když spustíte dotaz na databázi MariaDB, MariaDB používá spoustu systémových proměnných k určení, kterou znakovou sadu a řazení použít při každém spuštění dotazu. Pokud klient používá jinou znakovou sadu než server, MariaDB ji může přeložit do vhodné znakové sady a řazení.
Při odesílání výsledků dotazu zpět klientovi může MariaDB tyto výsledky v případě potřeby přeložit zpět do jiné znakové sady. MariaDB používá systémové proměnné k určení, které znakové sady a řazení použít v každém z těchto kroků.
Zde jsou tři způsoby, jak zobrazit řazení připojení v MariaDB.
@@collation_connection
Proměnná
Následující vrátí řazení pro připojení (můžete použít stejnou syntaxi pro kteroukoli ze systémových proměnných):
SELECT @@collation_connection;
Příklad výsledku:
+------------------------+ | @@collation_connection | +------------------------+ | utf8_general_ci | +------------------------+
Položka SHOW VARIABLES
Prohlášení
Možnost SHOW VARIABLES
příkaz zobrazuje hodnoty systémových proměnných MariaDB. To může vrátit mnoho dat, takže je obvykle nejlepší použít buď WHERE
nebo LIKE
klauzule, abyste jej zúžili pouze na ty proměnné, které vás zajímají.
Příklad:
SHOW VARIABLES
WHERE Variable_name = 'collation_connection';
Příklad výsledku:
+----------------------+-----------------+ | Variable_name | Value | +----------------------+-----------------+ | collation_connection | utf8_general_ci | +----------------------+-----------------+
Případně můžete použít LIKE
klauzule k vrácení proměnných, které začínají collation
:
SHOW VARIABLES LIKE 'collation%';
Příklad výsledku:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
Ve výchozím nastavení SHOW VARIABLES
zobrazí SESSION
proměnné. V tomto případě vrátí hodnoty, které jsou platné pro aktuální připojení.
Předchozí příklad by tedy mohl být přepsán následovně:
SHOW SESSION VARIABLES LIKE 'collation%';
Příklad výsledku:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
Případně můžete nahradit SESSION
s LOCAL
(což je synonymum pro SESSION
):
SHOW LOCAL VARIABLES LIKE 'collation%';
Můžete také použít GLOBAL
modifikátor pro zobrazení hodnot, které se používají pro nová připojení k MariaDB.
Příklad:
SHOW GLOBAL VARIABLES LIKE 'collation%';
Příklad výsledku:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8mb4_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
V tomto případě GLOBAL
proměnná pro collation_connection
vrátil jinou hodnotu do svého LOCAL
protějšek.
mariadb-admin
Utility (neboli mysqladmin
)
Je také možné získat informace o řazení serveru pomocí mariadb-admin
užitečnost.
Tento nástroj můžete použít k vrácení všech proměnných. A tyto proměnné můžete zúžit pouze na ty, které vás zajímají – v tomto případě collation_connection
proměnná.
Chcete-li vrátit pouze collation_connection
proměnnou, otevřete nový terminál a spusťte následující příkaz:
mariadb-admin variables | grep collation_connection
Výsledek:
| collation_connection | utf8mb4_general_ci
Všimněte si, že se jedná o stejnou hodnotu jako GLOBAL
proměnná vrácená výše (a nikoli SESSION
proměnná pro aktuální připojení). Toto je výchozí řazení pro nová připojení k MariaDB.
Dalším způsobem, jak to udělat, je nahradit mariadb-admin
pomocí mysqladmin
.
Takhle:
mysqladmin variables | grep collation_connection
Budete muset použít mysqladmin
pokud používáte starší verzi MariaDB (před 10.4.6). Od MariaDB 10.4.6 je mariadb-admin symbolickým odkazem na mysqladmin. Od MariaDB 10.5.2, mariadb-admin
je název skriptu s mysqladmin
symbolický odkaz. Viz dokumentaci MariaDB pro mysqladmin
pro více informací.