1

これが私のクエリです:

SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = "transactions" 

そして、これにかかった時間は次のとおりです。

Showing rows 0 - 29 ( 36 total, Query took 61.8934 sec)

私はデータベース管理者ではありませんが、これは正常ではありませんね。INFORMATION_SCHEMA のクエリに 1 分以上かかることを期待する必要がありますか? ここで私が間違っていることはありますか?これから通常の応答を得るために、インデックスなどを追加する必要がありますか?

--- 質問に対処するために編集します

バージョン 5.5.30-30.2

このデータベースは HostGator によってホストされています

EXPLAIN SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = "トランザクション"

id  select_type     table   type    possible_keys   key     key_len     ref     rows    Extra
1   SIMPLE  COLUMNS     ALL     NULL    TABLE_NAME  NULL    NULL    NULL    Using where; Open_frm_only; Scanned 1 database

CREATE TABLE トランザクションを表示:

transactions    CREATE TABLE `transactions` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `accountId` int(11) NOT NULL DEFAULT '0',
 `contractId` int(11) NOT NULL DEFAULT '0',
 `insertionId` int(11) NOT NULL DEFAULT '0',
 `aNetCIMProfileId` int(11) NOT NULL DEFAULT '0',
 `paymentProfileId` int(11) NOT NULL DEFAULT '0',
 `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
 `wasSuccessful` tinyint(1) NOT NULL DEFAULT '0',
 `amount` int(11) NOT NULL DEFAULT '0',
 `resultText` varchar(255) NOT NULL,
 `authNetTransactionId` bigint(20) NOT NULL DEFAULT '0',
 `isChargedBack` tinyint(1) NOT NULL DEFAULT '0',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=latin1

SELECT Count( * )
FROM INFORMATION_SCHEMA.COLUMNS

[これも 1 分以上かかりました]

1303

SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = "transactions" 
    AND TABLE_SCHEMA = 'mydbname'

同じ応答時間

SET global innodb_stats_on_metadata = 0;
#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation

(このデータベースは HostGator によってホストされています)

4

2 に答える 2

2
SELECT COLUMN_NAME,TABLE_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME like  "%transactions%" 
    AND TABLE_SCHEMA = 'mydbname'

TABLE_SCHEMA で、データベース名 mydbname を指定します。共有ホスティングでは、アクセスできる場合は時間がかかり、結果が表示されます.

于 2016-02-16T11:56:59.347 に答える