sql >> Database >  >> RDS >> MariaDB

3 manieren om de sortering voor uw verbinding in MariaDB te tonen

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.


  1. PreparedStatement en setTimestamp in oracle jdbc

  2. Hoe maak ik een samengestelde sleutel met SQL Server Management Studio?

  3. Controleer of een object een tabel, weergave of opgeslagen procedure is in SQL Server met behulp van de OBJECTPROPERTY()-functie

  4. Hoeveel gebruikers hebben toegang tot ondersteuning?