問題タブ [storage-engines]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
718 参照

mysql - データベース(MySql)とエンジン(InnoDB)の関係?

MyISAMとInnoDB(2つのいわゆるデータベースエンジン)を比較した記事は1,000万件あり、ウィキペディアでは漠然と次のように定義されています。

...データベース管理システム(DBMS)がデータベースからデータを作成、読み取り、更新、削除(CRUD)するために使用する基盤となるソフトウェアコンポーネント。

しかし、それは本当にどういう意味ですか?驚いたことに、DBとそのエンジンの関係について説明している記事は1つも見つかりませんでした。

エンジンは具体的な現実の世界でどのように現れますか?データベースは実際には単なるバイナリファイルであり、その「エンジン」は.exeファイルとの間のすべてのI / Oを処理するものですか?エンジンはEXPLAINANDQEPを処理しますか?

私が求めているのは、MySQLの責任と、その基盤となるエンジンの責任であるアクティビティをどのように定義するかということだと思います。

0 投票する
1 に答える
129 参照

mysql - MyISAM、MERGE、MEMORY、または CSV エンジンのいずれかまたはすべてを使用せずに、ソースから MySQL をコンパイルすることは可能ですか?

MyISAM、MERGE、MEMORY、または CSV ストレージ エンジンのいずれかまたはすべてを使用せずに、ソースから MySQL をコンパイルすることは可能ですか?

http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#option_cmake_storage_engine_optionsのドキュメントには、これらのストレージ エンジンは必須であると記載されていますが、オプションについても言及されてい-DWITHOUT_XXX_STORAGE_ENGINE=1ます。

これらのストレージ エンジンを直接、またはソース コードを微調整することで除外できるかどうか教えてください。-DWITHOUT_XXX_STORAGE_ENGINE=1また、オプションの使い方がわかりません。コマンドを使用してソースコードをビルドしています

MySQL ソース コードの親ディレクトリから。

0 投票する
1 に答える
14970 参照

mysql - 不明な変数'default-storage-engine= myisam'

Windows 7のデフォルトのストレージエンジンとしてMyISAMを使用するようにMysql(Ver 14.15 Distrib 6.0.8-alpha、Win64用)を構成しようとしています。次の内容でC:\my.cnfを作成しました。

そして、mysqlサービスを再起動し、コンソールからmysqlを実行しようとすると、次のエラーメッセージが表示されます。

私はチュートリアルから作業していて、上記をコピーしてmy.cnfファイルに直接貼り付けました。

私は次の組み合わせを試しました:

0 投票する
4 に答える
4820 参照

php - PHPセッションストレージに使用するのに最適なMySQLストレージエンジン

MySQLを使用してセッション変数を保存したい。私が理解していることから、これは、すべてのページ要求で、テーブルへの読み取りと書き込みが1回行われることを意味します。

このタスクに最適なMySQLストレージエンジンはどれですか?MyISAM、InnoDB、MariaDB(PHPMyAdminには表示されません)、メモリ、またはその他の完全なものですか?

0 投票する
1 に答える
340 参照

mysql - Web ゲーム プラットフォーム用の Node.js データベース

node.js を使用して Web ゲーム プラットフォーム/ストアを構築しており、ゲームのデータを保存する方法について調査を行っています。ゲームデータには、基本情報とキーワードのリストが含まれます。

最初に、MyISAM ストレージ エンジンと InnoDB ストレージ エンジンの違いを調べました。テーブル レベルではなく行レベルで操作をロックしたいので、InnoDB が最適な選択肢のようです。ただし、FULLTEXT 検索は MyISAM テーブルでしか利用できないこともわかりました。

私の最初の質問はこれです。私の 2 つの要件 (異なる行を同時に操作する機能と、任意のストアのように特定のキーワードでテーブルを検索する機能) を満たす MySQL ストレージ エンジンはありますか?

さらに、最初の質問に対する答えが「いいえ」の場合、node.js で、すぐに使用できる、またはプラグインを使用して、私の要件を満たし、サポートされている他のデータベース ソフトウェア (MySQL の代替) はありますか?

私が何をしようとも、多数の人が同時に同じゲームにアクセスする可能性があるため、読み取りを高速に実行する必要があります (したがって、テーブル内の同じ行にアクセスします)。

0 投票する
2 に答える
1019 参照

codeigniter - ストレージ エンジンからエラー 28 を受け取りました

私のウェブサイトは CodeIgnter フレームワークを使用し、iPage をホストしています。以前、私の PHP バージョンは 5.2 でしたが、5.3 に更新しました。PHP 5.3に更新した後、常に以下のようなエラーが発生します:

これは StackOverflow の新しい質問ではありませんが、次のことを確認したいと思います。

  • これらのエラーは、PHP 5.2 から 5.3 への更新が原因で発生しますか?
  • php.ini の設定ミスが原因ですか?
  • ホスティングから?または他の人?
0 投票する
1 に答える
55 参照

text - テキストのスパンを取得するために文字列を保持する最も効率的な方法はどれですか?

大きなテキストを 1 つだけメモリにロードせずに、ディスクに保存する方法が必要です。

私のクエリは、次のようなテキストのスパンの形式になっています: 位置 x と位置 x + n の間のすべてのテキストを教えてください。それ以上でもそれ以下でもありません。テキストを頻繁に変更することはありません。

おそらく、「永続的な」Bツリーのようなものが必要です。

また、次のようないくつかの DBMS 機能も必要になります。

  • クライアント/サーバー アーキテクチャ
  • キャッシュシステム

ありがとう

0 投票する
2 に答える
353 参照

mysql - MySQL アーキテクチャの最適化 - MySQL クラスター

g私は、次の構造を持つ Web アプリケーションに取り組んでいます。「顧客」がいて、これらの顧客のそれぞれに独自の「ユーザー」がいます。各顧客 (ユーザーおよびその他のデータを含む) は、他の顧客から完全に分離されており、顧客間でデータが共有されることはありません。
さらに、各「顧客」には異なるサブ Web サイトがあり、そこからのすべてのクエリ (顧客またはユーザーによるもの) は常に単一の customer.id を参照します。

データベースは次の方法で構築されます。

ユーザーを介して顧客に接続されている「blogPost」のようなテーブルがたくさんあります。

一般的なクエリは次のようなものです。

これらの結合は高価であり、実際には不要であることは注目に値します。2 番目にサブ Web サイトに入ると、特定の顧客に関連付けられているデータにのみ関心があるためです。

問題は、データベースをどのように改善できるかということです。このテーマについて読めば読むほど、私
は混乱していきます。
顧客ごとに 1 つずつ、多数の異なるデータベースを作成することをお勧めしますか? に冗長customerIDフィールドを追加するかもしれませblogPostんか?他のアイデア?モンゴDB?!

0 投票する
1 に答える
217 参照

mysql - MyISAMからInnoDBに既存のテーブルを移動します。どちらが高速ですか?

データベースにはすでに最大25〜30のテーブルがあり、すべてMyISAMです。これらのテーブルのほとんどは相互に関連しているため、多くのクエリはIDの結合を使用してデータを取得します。

テーブルの1つには700万から1000万のレコードが含まれており、すべてのデータの検索または更新、さらには取得を実行したい場合は遅くなります。今、私は上司に解決策を提案し、テーブルをInnoDBに変換するとパフォーマンスが向上する可能性があると述べました。

また、InnoDBの利点についても説明しました。

  1. とにかくキーで複数のテーブルを結合し、それらは関連しているので、外部キーを使用し、孤立したを回避するリレーショナルデータベースを使用することをお勧めします。大きなテーブルの1つで約10〜15kの孤立した行を見つけ、手動で削除する必要がありました。

  2. トランザクションのサポートでは、時々大きな更新を実行します。途中でいずれかが失敗した場合は、テーブル全体をバックアップされたものに置き換え、更新を再実行して、すべてのクエリが実行されたことを確認する必要があります。InnoDBを使用すると、クエリ2が失敗した場合に、クエリ1からの変更を元に戻すことができます。

上司から受け取った応答は、InnoDBがMyISAMよりも高速に実行されることを証明する必要があるというものです。私の質問は、2つ以上のことが孤立した行を排除することによって、アプリケーション自体の速度を向上させるのではないかということです。

一般的に、MyISAMはInnoDBよりも高速ですか?

注:MySQL5.5を使用する

0 投票する
2 に答える
110 参照

mysql - 大量の選択に対応するストレージ エンジン

バックグラウンド

データベースのボトルネックをできるだけ解消したい聖書を利用したAPIを作成しています。ほとんどの不要な結合を排除するために、私のデータはかなり非正規化されています。

情報

聖書のテキストは変わらないので、私はほとんどINSERT発言をしません。データを挿入するのは、定期的に発生する新しい翻訳を追加するときだけですが、ここでは速度は気にしません。

しかし、私はたくさん SELECT 声明を出すつもりです。

国境を越えた ACID 準拠の機能は必要ありません。私の主な関心事は速度です。

質問

これらの条件に適合する理想的な MySql ストレージ エンジンは何でしょうか?

私は各エンジンの基本を認識しているMyISAMので (私の推測ではそれが理想的です)、これらのエンジンのいくつかについての深い知識を示す統計またはさらなる推論でバックアップできる回答を探しています。

を使用NoSQLするよりは良いかもしれませRDBMSんが、それは私が探している情報ではありません。