0
TEXT 유형의 열이있는 많은 테이블이 있습니다. 일부 테이블은 크고 서비스는 고부하입니다. InnoDB의 모든 테이블.메모리 VS MyIsam tmpfs?
TEXT 형식의 필드가있는 SQL 쿼리에서 tmp 테이블을 만들면 MyISAM 유형의 디스크에 테이블이 만들어집니다. 디스크 I/O 작업을 피하기 위해 MySQL 임시 디렉토리 (tmpdir)는 메모리 (tmpfs)에 마운트됩니다.
1) 더 빠른 MyISAM tmpfs 또는 메모리는 무엇이 될까요? 큰 차이가 있습니까? read_buffer_size read_rnd_buffer_size :의 MyISAM은 MyISAM 테이블에 필요한 나는 버퍼를 구성해야합니까 임시 테이블에 사용하는 경우
2)? MyISAM 설정은 성능에 전혀 영향을 미치지 않을까요? (Myisam_sort_buffe_size, key_buffer_size)
TEXT를 VARCHAR로 변경하고 싶습니다.
대부분의 질문은 MySQL 8.0에서 사라졌습니다. Temp 테이블은 InnoDB가 될 것이고 몇 가지 방법으로 최적화 될 것이다. 그것은 5.7에서 '가능'합니다. 'internal_tmp_disk_storage_engine'을보십시오. –
모든 테이블은 MyIsam의 디스크에 Text 컬럼과 50 % tmp 테이블을 생성합니다. 우리는 많은 RAM을 가지고 있으며 tmp 테이블을 만드는 데 tmpfs를 사용할 수 있습니다. 디스크의 tmp 테이블보다 빠릅니다. 우리는 MySQL 5.6을 가지고 있습니다. Tmpfs는 RAM의 가상 영역입니다. MyISAM이 tmpfs 또는 Memory에 더 빨리 마운트된다는 것을 알고 싶습니다. tmp 테이블을 사용하여 생산적인 작업을 위해 MyIsam을 설정해야합니까? – paurlift
대신'TEXT'를 피하거나 최소한 복잡한 쿼리에서'TEXT' 컬럼을 가져 오는 것을 피할 것입니다. 복잡한 쿼리를 개선하여 tmp 테이블이 필요하지 않도록하려고합니다. 몇 가지 일반적인 검색어를 표시 하시겠습니까? –