>  기사  >  운영 및 유지보수  >  Linux에서 mysql 테이블 이름은 대소문자를 구분합니까?

Linux에서 mysql 테이블 이름은 대소문자를 구분합니까?

WBOY
WBOY원래의
2022-07-26 17:13:523213검색

Linux의 MySQL 테이블 이름은 대소문자를 구분합니다. MySQL 데이터베이스 이름, 테이블 이름, 변수 이름 및 테이블 별칭은 Linux에서 엄격하게 대소문자를 구분하지만 열 이름과 열 별칭은 모든 대소문자를 구분합니다. MySQL 구성 파일의 "ower_case_table_names" 매개변수를 수정하여 대소문자 구분 여부를 설정할 수 있습니다.

Linux에서 mysql 테이블 이름은 대소문자를 구분합니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.

Linux에서 mysql 테이블 이름은 대소문자를 구분하나요?

Linux에서는 MySQL 설치가 완료된 후 기본적으로 테이블 이름은 대소문자를 구분하며, 이 속성을 추가할 수 없다고 인터넷에 나와 있습니다. /etc/mysql/my.cnf의 필드 어떤 구성도 적용되지 않으며 수정 후 mysql이 시작되지 않습니다.

MySQL 테이블 이름은 Linux에서 대소문자를 구분하지만 Windows에서는 MySQL 테이블 이름은 대소문자를 구분하지 않습니다. MySQL 구성 파일 "my.ini [mysqld]"에 "ower_case_table_names = 매개변수" 행을 추가하여 여부를 설정할 수 있습니다. 쓰기에는 크기가 중요합니다.

Linux에서 데이터베이스 이름, 테이블 이름, 열 이름 및 별칭에 대한 MySQL의 대소문자 규칙은 다음과 같습니다.

  • 데이터베이스 이름과 테이블 이름은 엄격하게 대소문자를 구분합니다.

  • 테이블 별칭은 대소문자를 엄격하게 구분합니다.

  • 열 이름과 열 별칭은 모든 경우에 대소문자를 구분합니다.

  • 변수 이름도 대소문자를 엄격하게 구분합니다.

MySQL은 Windows에서 대소문자를 구분하지 않습니다.

그래서 다른 운영체제에서도 프로그램과 데이터베이스가 정상적으로 실행되게 하려면 설계 시 소문자로 변환하는 것이 가장 좋습니다. 하지만 설계 시 대소문자를 정규화했다면 Windows 환경에서 그냥 변경해 주면 됩니다.

구체적인 작업은 다음과 같습니다.

MySQL 구성 파일 my.ini [mysqld]

에 owe_case_table_names = 1 줄을 추가합니다. 매개변수 설명:

  • 0: 크기 구분 쓰기

  • 1: 대소문자를 구분하지 않음

MySQL에서 데이터베이스와 테이블은 해당 디렉터리 아래의 디렉터리와 파일에 해당합니다.

따라서 운영 체제의 민감도에 따라 데이터베이스 및 테이블 이름 지정의 대소문자 구분이 결정됩니다. 즉, 데이터베이스 및 테이블 이름은 Windows에서는 대소문자를 구분하지만 대부분의 Unix 시스템에서는 대소문자를 구분합니다.

열 이름과 열 별칭은 모든 경우에 대소문자를 구분하며, 테이블 별칭은 대소문자를 구분합니다. 이 문제를 방지하려면 데이터베이스 명명 규칙을 정의할 때 대문자를 사용하지 않고 모두 소문자와 밑줄을 사용하는 것이 가장 좋습니다. 또는 -O lower_case_table_names=1 매개변수를 사용하여 강제로 시작하도록 할 수 있습니다

권장 학습:Linux 비디오 튜토리얼

위 내용은 Linux에서 mysql 테이블 이름은 대소문자를 구분합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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