Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 "keycache로 복구"를 방지하려면 어떻게 해야 합니까?

<시간/>

MySQL에서 keycache로 복구하지 않으려면 아래 구문을 따라야 합니다 -

create table yourNewTableName as (select *from yourOldTableName);
alter table yourNewTableName add index(yourCoumnName);

먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable
   (
   StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   StudentFirstName varchar(20),
   StudentLastName varchar(20)
   );
Query OK, 0 rows affected (0.24 sec)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable(StudentFirstName,StudentLastName) values('John','Doe');
Query OK, 1 row affected (0.05 sec)

mysql> insert into DemoTable(StudentFirstName,StudentLastName) values('David','Miller');
Query OK, 1 row affected (0.05 sec)

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> select *from DemoTable;

이것은 다음과 같은 출력을 생성합니다 -

+-----------+------------------+-----------------+
| StudentId | StudentFirstName | StudentLastName |
+-----------+------------------+-----------------+
| 1         | John             | Doe             |
| 2         | David            | Miller          |
+-----------+------------------+-----------------+
2 rows in set (0.00 sec)

1단계 − 다음은 MySQL에서 "repair with keycache"를 피하기 위한 쿼리입니다.

mysql> create table DemoTable as (select *from DemoTable);
Query OK, 2 rows affected (0.34 sec)
Records: 2 Duplicates: 0 Warnings: 0

2단계 − 이제 테이블 변경을 사용하세요.

mysql> alter table DemoTable add index(StudentFirstName);
Query OK, 2 rows affected (0.57 sec)
Records: 2 Duplicates: 0 Warnings: 0