>  기사  >  데이터 베이스  >  Linux에서 MySQL 테이블 이름을 대소문자를 구분하지 않게 만드는 방법은 무엇입니까?

Linux에서 MySQL 테이블 이름을 대소문자를 구분하지 않게 만드는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-01 13:43:02434검색

How to Make MySQL Table Names Case-Insensitive on Linux?

Linux에서 MySQL 테이블 이름 대소문자 구분 해결

소개

MySQL의 테이블 이름 대소문자 구분은 마이그레이션 시 호환성 문제를 일으킬 수 있습니다. Apple 서버에서 Linux 서버까지의 웹사이트. Mac 및 Windows 서버에는 기본적으로 대소문자를 구분하지 않는 파일 시스템이 있지만 Linux 서버에는 일반적으로 그렇지 않습니다. 이로 인해 쿼리의 테이블 이름이 일치하지 않아 웹사이트 오작동이 발생할 수 있습니다.

해결 방법

이 문제를 해결하고 Linux MySQL이 Mac 및 Windows처럼 대소문자를 구분하지 않고 작동하도록 하려면 서버의 경우 lower_case_table_names라는 시스템 변수를 수정할 수 있습니다. 이 변수는 서버가 식별자 대소문자 구분을 처리하는 방법을 나타냅니다.

단계

  1. MySQL 구성 파일(my.cnf 또는 my.ini)에서 lower_case_table_names 변수를 설정하고 해당 값을 1로 설정합니다.
  2. MySQL 서비스를 다시 시작하여 변경 사항을 적용합니다.

lower_case_table_names를 1로 설정하면 테이블 이름이 디스크 및 쿼리에 소문자로 저장됩니다. 더 이상 대소문자를 구분하지 않습니다. 이렇게 하면 테이블 이름이나 스크립트를 수정할 필요 없이 이전 웹사이트의 스크립트와의 호환성이 보장됩니다.

추가 정보

  • 데이터베이스 및 테이블 이름은 일반적으로 대소문자를 구분하지 않습니다. Mac 및 Windows에서는 대소문자를 구분하지 않는 파일 시스템으로 인해.
  • Linux에서 파일 시스템은 일반적으로 대소문자를 구분하므로 테이블 이름도 대소문자를 구분합니다.
  • lower_case_table_names를 0으로 설정 파일 이름이 대소문자를 구분하지 않는 시스템(예: Windows 또는 Mac OS X)에서 MySQL을 실행하는 경우 인덱스 손상을 방지하려면 피해야 합니다.

위 내용은 Linux에서 MySQL 테이블 이름을 대소문자를 구분하지 않게 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.