私は管理システムのWebサイトで、サーバー上で動作しているPostgresデータベースから取得したデータのテーブルで構成されています。私は、PHPのクエリを記述し、データベースからデータの行をエコーすることによって、データを取得しています。これは、50,000を超えるレコードを持つテーブルからデータを取得しようとしているものを除いて、私のWebサイトのすべてのページで機能します。そのページを読み込もうとすると、タイムアウトするか、ブラウザが完全にクラッシュします。 pgAdminを使用してこのテーブルのデータを表示すると、約10〜20秒かかります。jQuery DataTableをロードするとWebページがクラッシュする - 行が多すぎますか?
これがどうして起こっているのか、私のデータテーブルの読み込み速度を上げる方法を知っている人はいますか?ありがとうございました!
編集:
これは私がPHPを使用してデータベースを照会しています方法です。ここで
$query = "SELECT respondentid, pro, homephone, otherphone, fname, lname, note from respondent";
$result = pg_query($query);
echo "<table id='respondents'>";
echo "<thead> <tr> <th>Headings</th> </tr></thead>";
while($row = pg_fetch_array($result)) {
echo '<tr>';
echo '<td>' . $row['columnnames'] . '</td>';
echo "</tr>";
echo "</table>";
は、データベースの列です:
respondentid serial not null,
pro character varying(3),
homephone character varying(15),
otherphone character varying(15),
fname character varying(15),
lname character varying(20),
note text
あなたは、ログにクエリ、あなたのテーブルの構造やクエリの実行計画をあなたのエラーメッセージを投稿してもらえますか? – Arkhena
[LIMITクエリ最適化](https://dev.mysql.com/doc/refman/5.7/en/limit-optimization.html)を実行しようとしましたか?例えば。 'LIMIT 50' –
@Arkhena私のポストを編集しました。私のページが何年もぶら下がっていて、何を探したらいいのか分からないので、私はログのエラーメッセージについてよく分かりません。 – ellenmichellen