sql >> データベース >  >> RDS >> MariaDB

MariaDBで接続の照合を表示する3つの方法

    MariaDBデータベースに対してクエリを実行すると、MariaDBは一連のシステム変数を使用して、クエリが実行されるたびに使用する文字セットと照合を決定します。クライアントがサーバーに対して別の文字セットを使用している場合、MariaDBはそれを適切な文字セットと照合に変換できます。

    クエリ結果をクライアントに送り返すときに、MariaDBは、必要に応じて、これらの結果を別の文字セットに完全に変換して戻すことができます。 MariaDBはシステム変数を使用して、これらの各ステップで使用する文字セットと照合を決定します。

    MariaDBで接続の照合を表示する3つの方法を次に示します。

    @@collation_connection 可変

    以下は、接続の照合を返します(どのシステム変数にも同じ構文を使用できます):

    SELECT @@collation_connection;

    結果の例:

    +------------------------+
    | @@collation_connection |
    +------------------------+
    | utf8_general_ci        |
    +------------------------+

    SHOW VARIABLES ステートメント

    SHOW VARIABLES ステートメントは、MariaDBシステム変数の値を示しています。これにより大量のデータが返される可能性があるため、通常はWHEREのいずれかを使用するのが最適です。 またはLIKE 関心のある変数のみに絞り込むための句。

    例:

    SHOW VARIABLES 
    WHERE Variable_name = 'collation_connection';

    結果の例:

    +----------------------+-----------------+
    | Variable_name        | Value           |
    +----------------------+-----------------+
    | collation_connection | utf8_general_ci |
    +----------------------+-----------------+

    または、LIKEを使用することもできます collationで始まる変数を返す句 :

    SHOW VARIABLES LIKE 'collation%';

    結果の例:

    +----------------------+--------------------+
    | Variable_name        | Value              |
    +----------------------+--------------------+
    | collation_connection | utf8_general_ci    |
    | collation_database   | utf8mb4_general_ci |
    | collation_server     | utf8mb4_general_ci |
    +----------------------+--------------------+
    >

    デフォルトでは、SHOW VARIABLESSESSIONを示しています 変数。この場合、現在の接続に対して有効な値を返します。

    したがって、前の例は次のように書き直すことができます。

    SHOW SESSION VARIABLES LIKE 'collation%';

    結果の例:

    +----------------------+--------------------+
    | Variable_name        | Value              |
    +----------------------+--------------------+
    | collation_connection | utf8_general_ci    |
    | collation_database   | utf8mb4_general_ci |
    | collation_server     | utf8mb4_general_ci |
    +----------------------+--------------------+
    >

    または、SESSIONを置き換えることもできます LOCALを使用 (これはSESSIONの同義語です ):

    SHOW LOCAL VARIABLES LIKE 'collation%';

    GLOBALを使用することもできます MariaDBへの新しい接続に使用される値を表示する修飾子。

    例:

    SHOW GLOBAL VARIABLES LIKE 'collation%';

    結果の例:

    +----------------------+--------------------+
    | Variable_name        | Value              |
    +----------------------+--------------------+
    | collation_connection | utf8mb4_general_ci |
    | collation_database   | utf8mb4_general_ci |
    | collation_server     | utf8mb4_general_ci |
    +----------------------+--------------------+
    >

    この場合、GLOBAL collation_connectionの変数 LOCALに異なる値を返しました カウンターパート。

    mariadb-admin ユーティリティ(別名mysqladmin

    mariadb-adminを使用してサーバー照合情報を取得することもできます 効用。

    このユーティリティを使用して、すべての変数を返すことができます。そして、これらの変数を関心のある変数だけに絞り込むことができます。この場合は、collation_connection 変数。

    collation_connectionだけを返すには 変数を入力し、新しいターミナルを開いて、次のコマンドを実行します。

    mariadb-admin variables | grep collation_connection

    結果:

    | collation_connection      | utf8mb4_general_ci

    これはGLOBALと同じ値であることに注意してください 上で返された変数(SESSIONではありません) 現在の接続の変数)。これは、MariaDBへの新しい接続のデフォルトの照合です。

    これを行う別の方法は、mariadb-adminを置き換えることです。 mysqladminを使用 。

    このように:

    mysqladmin variables | grep collation_connection

    mysqladminを使用する必要があります 以前のバージョンのMariaDB(10.4.6より前)を使用している場合。 MariaDB 10.4.6以降、mariadb-adminはmysqladminへのシンボリックリンクです。 MariaDB 10.5.2から、mariadb-admin スクリプトの名前で、mysqladminが付いています シンボリックリンク。 mysqladminについてはMariaDBのドキュメントを参照してください 詳細については。


    1. MySQLWorkbenchを使用したビジュアルデータベースの作成

    2. SQL Server(T-SQL)でデータベースメールアカウントとデータベースプリンシパル間の関連付けを検索する

    3. SQLServerテーブルで列をNullから非Nullに変更する方法-SQLServer/T-SQLチュートリアルパート52

    4. Postgresqlに任意の長さの文字列を保存します