ALTER TABLE contacts ADD KEY (columnName);
を使用してテーブルにインデックスを付けた場合、インデックス情報はMySQLデータベースの物理的にどこにあるのだろうと思いますか?
#2が正解だと思います。
複数のテーブルの列にインデックスを付けることはできますか?どうやって?
MyISAMエンジンの場合、テーブルのインデックスは.MYI
ファイルに(テーブルの.MYD
および.frm
ファイルとともにデータディレクトリに)保存されます。
InnoDBエンジンの場合、インデックスはテーブルとともにテーブルスペースに格納されます。 innodb_file_per_table
オプションが設定されている場合、インデックスは.ibd
ファイルとともにテーブルの.frm
ファイルにあります。
いいえ、複数のテーブルを参照するインデックスを作成することはできません。インデックスはテーブルに固有です。
MySQLを使用すると、キーを含むすべてのテーブル情報がINFORMATION_SCHEMA
データベース。
より詳細な回答については、 データベース管理者 に尋ねることをお勧めします。