Wanneer u een query uitvoert op een MariaDB-database, gebruikt MariaDB een aantal systeemvariabelen om te bepalen welke tekenset en sortering moet worden gebruikt wanneer query's worden uitgevoerd. Als de client een andere tekenset dan de server gebruikt, kan MariaDB deze vertalen naar een geschikte tekenset en sortering.
Bij het terugsturen van de queryresultaten naar de client, kan MariaDB deze resultaten desgewenst terugvertalen naar een andere tekenset. MariaDB gebruikt systeemvariabelen om te bepalen welke tekensets en sorteringen bij elk van deze stappen moeten worden gebruikt.
Hier zijn drie manieren om de verbindingssortering in MariaDB te tonen.
De @@collation_connection
Variabele
Het volgende retourneert de sortering voor de verbinding (u kunt dezelfde syntaxis gebruiken voor elk van de systeemvariabelen):
SELECT @@collation_connection;
Voorbeeld resultaat:
+------------------------+ | @@collation_connection | +------------------------+ | utf8_general_ci | +------------------------+
De SHOW VARIABLES
Verklaring
De SHOW VARIABLES
statement toont de waarden van MariaDB-systeemvariabelen. Dit kan veel gegevens opleveren, dus het is meestal het beste om een WHERE
. te gebruiken of LIKE
clausule om het te beperken tot alleen die variabelen waarin u geïnteresseerd bent.
Voorbeeld:
SHOW VARIABLES
WHERE Variable_name = 'collation_connection';
Voorbeeld resultaat:
+----------------------+-----------------+ | Variable_name | Value | +----------------------+-----------------+ | collation_connection | utf8_general_ci | +----------------------+-----------------+
Als alternatief kunt u de LIKE
. gebruiken clausule om variabelen te retourneren die beginnen met collation
:
SHOW VARIABLES LIKE 'collation%';
Voorbeeld resultaat:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
Standaard SHOW VARIABLES
toont de SESSION
variabelen. In dit geval worden de waarden geretourneerd die van kracht zijn voor de huidige verbinding.
Daarom zou het vorige voorbeeld als volgt kunnen worden herschreven:
SHOW SESSION VARIABLES LIKE 'collation%';
Voorbeeld resultaat:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
Als alternatief kunt u SESSION
. vervangen met LOCAL
(wat een synoniem is voor SESSION
):
SHOW LOCAL VARIABLES LIKE 'collation%';
U kunt ook de GLOBAL
. gebruiken modifier om de waarden weer te geven die worden gebruikt voor nieuwe verbindingen met MariaDB.
Voorbeeld:
SHOW GLOBAL VARIABLES LIKE 'collation%';
Voorbeeld resultaat:
+----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8mb4_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+
In dit geval is de GLOBAL
variabele voor collation_connection
heeft een andere waarde geretourneerd naar zijn LOCAL
tegenhanger.
De mariadb-admin
Hulpprogramma (ook bekend als mysqladmin
)
Het is ook mogelijk om informatie over de serversortering op te halen met de mariadb-admin
nut.
U kunt dit hulpprogramma gebruiken om alle variabelen te retourneren. En u kunt die variabelen beperken tot alleen degene waarin u geïnteresseerd bent - in dit geval de collation_connection
variabel.
Alleen de collation_connection
teruggeven variabele, open een nieuwe terminal en voer het volgende commando uit:
mariadb-admin variables | grep collation_connection
Resultaat:
| collation_connection | utf8mb4_general_ci
Merk op dat dit dezelfde waarde is als de GLOBAL
variabele die hierboven is geretourneerd (en niet de SESSION
variabele voor de huidige verbinding). Dit is de standaardsortering voor nieuwe verbindingen met MariaDB.
Een andere manier om dit te doen is door mariadb-admin
te vervangen met mysqladmin
.
Zoals dit:
mysqladmin variables | grep collation_connection
U moet mysqladmin
. gebruiken als u een eerdere versie van MariaDB gebruikt (vóór 10.4.6). Vanaf MariaDB 10.4.6 is mariadb-admin een symbolische link naar mysqladmin. Van MariaDB 10.5.2, mariadb-admin
is de naam van het script, met mysqladmin
een symbolische link. Zie de MariaDB-documentatie voor mysqladmin
voor meer informatie.