라 이브 러 리 이름 대소 문자 문제 가 sqlserver 와 호 환 되 는 시작 설정 방법

전역 변수 lowercase_table_names 1 실험 으로 설정:1.lowercase_tables_name=0 의 경우(Linux 기본 값)my sql 을 직접 시작 합 니 다.my test 라 이브 러 리 에 새 표 MyTable 과 my table my sql>use my test;mysql> create table MyTable(id int not null,name varchar(10),dt date); mysql> create table mytable(id int not null,name varchar(10),dt date); mysql> show tables; +------------------+ | Tables_in_my test|+------------------------------------------------------------------------------------------------case_tables_name=1 의 경우(이 경우 로 설정 해 야 합 니 다)etc 디 렉 터 리 에 들 어가 my.cnf 파일 을 편집 합 니 다[root@MYSQLServeretc]\#vi my.cnf 에서[my sqld]를 찾 아 전체 변수의 맨 뒤에 줄 을 추가 합 니 다:lowercase_table_names=1 저장,종료,그리고 mysql 다시 시작[root@MYSQLServer etc]# service mysqld restart; mysql 에 입장[root@MYSQLServer mysql]# bin/mysql mysql> use mytest; mysql> select * from MyTable; mysql> select * from mytable; 두 검색 결과 가 같 습 니 다.모두 my table 표를 조회 하 는 것 입 니 다.MyTable 표 는 찾 을 수 없습니다.(볼 수 있 지만 조회 할 수 없습니다.)MyTable 표 my sql>create table MyTable(id int not null,name varchar(10),dt date)을 다시 만 들 려 고 합 니 다.ERROR 1050(42S 01):Table'my table'already exists 는 표 에 존재 하 는 힌트 를 얻 을 수 있 습 니 다.마찬가지 로 MyTest 라 이브 러 리 my sql>create database MyTest 를 만 들 수 있 습 니 다.ERROR 1007 (HY000): Can't create database 'mytest'; database exists 도 라 이브 러 리 에 존재 하 는 힌트 를 받 을 수 있 습 니 다.이 경우 표 이름과 라 이브 러 리 이름 은 대소 문 자 를 구분 하지 않 습 니 다.메모:유 닉 스에 서 lowercase_tables_name 을 1 로 설정 하기 전에 my sqld 를 다시 시작 하기 전에 오래된 데이터베이스 이름과 표 이름 을 소문 자로 변환 해 야 합 니 다.그렇지 않 으 면 설정 하면 이전 시 계 를 찾 을 수 없습니다.(위의 실험 에서 MyTable 표 는 lowercase_tables_name=1 시 에 찾 을 수 없습니다)

좋은 웹페이지 즐겨찾기