SQLデータベースがWebサーバーのどこにどのように保存されているかについて知りたいだけです。私のSQLの特定のフレーバーは、違いがあればMySQLですよね?
4 に答える
MySQLの場合、SHOW VARIABLESを使用して、データがファイルシステムのどこにあるかを調べることができます。
mysql> show variables like "datadir";
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| datadir | /var/lib/mysql/ |
+---------------+-----------------+
そのディレクトリ内には、データベースごとに1つのサブディレクトリがあります。
各データベースディレクトリ内には、テーブルデータとインデックスの保存に使用されるファイルがあります。これらの正確な構造は、使用するストレージエンジン(通常はMyISAMまたはInnoDB for MySQL)によって異なります。
重要なWebサイトの場合、SQLデータベース(MySQLなど)は通常、DBサーバー専用の別のサーバーに保存されます。
これは、ディストリビューションとストレージメカニズムによって異なります。
MyISAMデータベースは、多くの場合、/ var / lib / mysql/[databasename]の下のテーブルごとに1つのファイルに保存されます。
すべてのInnoDBデータベースは、デフォルトで同じファイル(たとえば、/ var / lib / mysql)に保存されます。
最適化されたインストールでは、速度または信頼性、あるいはその両方が最適化された特別なファイルシステムにデータベースファイルが存在する場合があります。
MySQLの場合、データは/ var / lib / mysqlまたは同様のパスに保存され、使用しているデータベース形式に応じて、MyISAMでは、データベース情報は.frm、.MYI、およびの同じ名前のディレクトリに保存されます。 .MYDファイルとInnoDBを使用すると、データベース情報はibdata1とib_logfilesに保存されます。