2010-05-19 2 views
8

리눅스 머신에서 MYSQL 데이터베이스로부터의 내보내기가 있습니다. 그러나 Windows에서 MYSQL으로 데이터베이스를 가져올 때 낙타 케이스 인 모든 테이블 이름은 이제 모두 소문자입니다. SQL 덤프에 올바른 대소 문자가 있지만 phpmyadmin 이음새를 통해 가져 오기를 수행하면이를 제거 할 수 있습니다.db를 윈도우에 임포트 할 때 대소 문자를 유지함

어떻게 가져 와서 케이스를 보관할 수 있습니까?

답변

9

Windows에서 대소 문자를 구분할 수 있도록 mysql에 대한 설정이 있습니다.

lower_case_table_names=2 

그런 다음 mysql을 다시 시작 : 당신은 my.cnf 파일을 편집하고 설정을 변경해야합니다.

그렇지 않으면 phpMyAdmin이 Linux-to-Windows 문제가 아닌 쿼리를 서버로 전달하는 방식을 변경하는 경우 일 수 있습니다. SQLyog과 같은 다른 mysql 관리자를 사용하여 SQL 덤프 가져 오기를 시도 했습니까? 그것은 MySQL의 참조 설명서에서 다음 페이지를 읽고 아마 가치가

+0

감사 MySQL의를 다시 시작하고 여전히 데이터를 가져 오기 위해 명령 줄을 사용합니다 (INI에 없었다, [mysqld를] 후 추가했다) 테이블 이름의 대소 문자를 유지하지 않았습니다. – user103219

+0

Atonewell이 제안했듯이 변수가 2 대신 0 일 필요가있을 수 있습니다. 그러나 참조 매뉴얼에는 이렇게 나와 있습니다 : "대소 문자가 구별 된 시스템에서 MySQL을 실행하는 경우이 변수를 0으로 설정하면 안됩니다 * (Windows 또는 Mac OS X와 ​​같은) 민감하지 않은 파일 이름 - 대소 문자를 구별하지 않는 파일 시스템에서 --lower-case-table-names = 0으로이 변수를 0으로 설정하고 다른 문자를 사용하여 MyISAM 테이블 이름에 액세스하면 인덱스 손상이 결과. * " – JYelton

관련 문제