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

MySQLデータベースエンジンの操作

    この記事は、MySQLでのデータベースエンジンの操作の概要です。

    この記事の手順の一部に従うには、サーバーへのルートアクセス権が必要です。

    MySQLデータベースエンジンについて

    データベースエンジンは、MySQLがデータを処理および処理するための基盤となる機能を提供します。

    最も一般的で人気のある2つのMySQLデータベースエンジンはMyISAM およびInnoDB 。 MyISAMは、5.5.5より前のバージョンのMySQLのデフォルトエンジンであり、ほとんどのシナリオで適切に機能します。ただし、ニーズによっては、InnoDBなどの別のデータベースエンジンの方が適している場合があります。たとえば、InnoDBはトランザクションをサポートしますが、MyISAMはサポートしません。 InnoDBは外部キーのサポートも提供しますが、MyISAMはサポートしません。

    サーバーへのルートアクセス権がある場合は、MySQLがさまざまなデータベースエンジンをいつどのように使用するかを完全に制御できます。デフォルトのデータベースエンジンを変更したり、特定のテーブルのデータベースエンジンを変更したりできます。

    この記事は、 mysqlを使用してコマンドラインからMySQLにアクセスする方法をすでに知っていることを前提としています。 プログラム。これを行う方法がわからない場合は、最初にこの記事をお読みください。 デフォルトのデータベースエンジンの決定

    インストールのデフォルトのデータベースエンジンを決定するには、 mysql>で次のコマンドを入力します プロンプト:

    SHOW ENGINES;

    サポートされているエンジンのリストが、各エンジンでサポートされている機能と簡単な説明とともに表示されます。デフォルトのデータベースエンジンはDEFAULTとマークされています サポートで 列。

    デフォルトのデータベースエンジンの変更

    MySQLインストールのデフォルトのデータベースエンジンを変更できます。これを行うと、作成するすべての新しいテーブルは新しいデータベースエンジンを使用します(テーブルの作成中にエンジンを明示的に設定した場合を除く)。

    デフォルトのデータベースエンジンを変更するには、次の手順に従います。

    1. お好みのテキストエディタを使用して、 my.cnfを開きます。 サーバー上のファイル。 my.cnfの場所 ファイルはLinuxディストリビューションによって異なります:
      • CentOSおよびFedoraでは、 my.cnf ファイルは/etcにあります ディレクトリ。
      • DebianおよびUbuntuでは、 my.cnf ファイルは/etc / mysqlにあります ディレクトリ。
    2. my.cnf ファイルで、 [mysqld]を見つけます セクション。
    3. [mysqld]に次の行を追加または変更します セクション。 エンジンを交換してください デフォルトとして使用するエンジンの名前を使用します。

      default-storage-engine=ENGINE

      InnoDBデータベースエンジンを有効にしている場合、Linuxディストリビューションによっては、 my.cnfの次の行を無効にする必要がある場合があります。 ファイル:

      skip-innodb

      これを行うには、ポンド記号()を追加するだけです。 )次のように、行の先頭まで:

      #skip-innodb
    4. 変更をmy.cnfに保存します ファイルを作成し、テキストエディタを終了します。
    5. Linuxディストリビューションに適切なコマンドを使用してMySQLサーバーを再起動します。

      • CentOSおよびFedoraの場合は、次のように入力します。
        service mysqld restart
      • DebianおよびUbuntuの場合、次のように入力します。

        service mysql restart
    6. 新しいデフォルトのデータベースエンジンを確認するには、 SHOW ENGINESを使用します 「デフォルトのデータベースエンジンの決定」セクションで説明されているSQLステートメント。
    テーブルの現在のデータベースエンジンの決定

    データベーステーブルが現在使用しているエンジンを確認するには、 mysql>で次のコマンドを入力します 促す。 データベースを置き換えます 確認するデータベースの名前:

    SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES where TABLE_SCHEMA = 'database';

    このコマンドは、データベース内のすべてのテーブルのリストと、各テーブルが使用しているエンジンを表示します。

    テーブルのデータベースエンジンの変更

    すでに存在するテーブルのデータベースエンジンを変更できます。たとえば、次のSQLステートメントは、 myTableという名前のテーブルを変更する方法を示しています。 InnoDBエンジンを使用するには:

    ALTER TABLE myTable ENGINE = InnoDB;
    特定のデータベースエンジンを使用した新しいテーブルの作成

    データベースにテーブルを作成する場合、そのデータベースエンジンを明示的に設定できます(そうでない場合、MySQLはテーブルの作成時にデフォルトのデータベースエンジンを使用します)。たとえば、次のSQLステートメントは、 myTableという名前のテーブルを作成する方法を示しています。 MyISAMデータベースエンジンを使用するもの:

    CREATE TABLE myTable (
           id INT NOT NULL AUTO_INCREMENT,
           PRIMARY KEY (id),
           data VARCHAR(20) NOT NULL
    ) ENGINE MyISAM;

    同様に、InnoDBデータベースエンジンを使用するテーブルを作成するには、次のSQLステートメントを使用できます。

    CREATE TABLE myTable (
           id INT NOT NULL AUTO_INCREMENT,
           PRIMARY KEY (id),
           data VARCHAR(20) NOT NULL
    ) ENGINE InnoDB;
    詳細情報
    • MyISAMエンジンの詳細については、http://dev.mysql.com/doc/refman/5.5/en/myisam-storage-engine.htmlにアクセスしてください。
    • InnoDBエンジンの詳細については、http://dev.mysql.com/doc/refman/5.5/en/innodb-storage-engine.htmlにアクセスしてください。

    1. SQLServerで月名を月番号に変換する

    2. Android:Sqliteエラー-(1)nullに近い:構文エラー

    3. JUnitテストフレームワークを使用したJavaユニットテストの調査

    4. group-concat mysqlを使用してjson形式を作成するにはどうすればよいですか?