重複の可能性:
MySQL のテーブルの最大数
1 つのデータベースに含める必要があるテーブルの推奨数はありますか。また、アプリケーションで複数の接続を開いていることに欠点はありますか。
私が現在取り組んでいるアプリケーションは、多くのテーブルにアクセスするか、多くのテーブルにアクセスする可能性があります。テーブルを異なるデータベースに分割することを考えました。経験がないので、誰かが私を正しい方向に向けてくれることを願っています。
重複の可能性:
MySQL のテーブルの最大数
1 つのデータベースに含める必要があるテーブルの推奨数はありますか。また、アプリケーションで複数の接続を開いていることに欠点はありますか。
私が現在取り組んでいるアプリケーションは、多くのテーブルにアクセスするか、多くのテーブルにアクセスする可能性があります。テーブルを異なるデータベースに分割することを考えました。経験がないので、誰かが私を正しい方向に向けてくれることを願っています。
おそらく、テーブルを別々のデータベースに分割する必要性は、必要に応じて対処するのが最善です。
あなたはたくさんのテーブルをいくつ言いますか?100、200、1000 - おそらく最後のものは別のデータベースを必要とするかもしれませんが、明確な利点がある場合に限ります.
私の提案は、なぜそんなに多くのテーブルが必要なのかを考えることです。そもそも、テーブルを減らして行を増やすことができる可能性が高いです。
MyISAM を使用している場合、テーブルの最大数はオペレーティング システム/ファイル システムによって制限されます。テーブルはファイルシステム上に個別のファイルとして保存されるため、OS がディレクトリ内で許可するファイルの最大数です。
InnoDB の場合、制限は40 億のようです。
複数のオープン接続を持つことには、長所と短所があります。何をしようとしていますか?注意すべきことの 1 つは、MySQL サーバーが受け入れる接続数に制限があることです。
1 つの接続内のすべてのクエリはシリアル化されます。これにより、特に 1 つのコマンドが前のコマンドの完了を必要とする場合に、プログラミングが簡単になります。複数の接続を追加すると、同じ状況で競合状態になる可能性があります。
MySQL はネストされたトランザクションをサポートしていないため、トランザクション内でトランザクションを完了するために別の接続を作成する必要がある場合があります。