2011-01-05 4 views
1

이 읽기 ​​/ 쓰기 INI 파일에 대한 CPAN에 모듈의 많은,하지만 모든 모듈은 지금까지 (Config::GeneralConfig::IniFilesConfig::Simple, Config::Tiny가) 내 MySQL의의 my.cnf 파일을 읽는 데 실패 테스트했습니다. 어떤 일반적인 모듈을 사용하여 MySQL ini 구성 파일을 읽으십니까?

그들은 모두이 때문에 (키하지만없는 값 라인) 같은 구문의 실패 : 그래서

skip-external-locking 

, 어떤 모듈은 MySQL의 INI 구성 파일 및 다른 프로그램의 INI 파일을 읽을 사용하고 있습니까?

답변

1

...이되지 않은 :

https://github.com/sebthebert/Perl-Shots/blob/master/Modules/Config/Tiny.pm

DIFF :

8c8 
< $Config::Tiny::VERSION = '2.12'; 
--- 
> $Config::Tiny::VERSION = '2.13'; 
66a67,76 
>  # Handle 'non-standard' MySQL properties 
>  if (/^\s*([-_a-z]+)\s*$/i) { 
>     $self->{$ns}->{$1} = 1; 
>     next; 
>   } 
>  # Drop 'non-standard' MySQL '!include' & '!includedir' directives 
>  if (/^\s*!include(dir)?\s+\S+\s*$/) { 
>   next; 
>  } 
0

나는

내가 GitHub에 내 수정 모듈을 밀어 그것을 시도하지만 분명히 나는 ​​마침내 표준이 아닌 MySQL의 물건을 처리 할 수 ​​ Config::Tiny를 패치하기로 결정 MySQL::Config

+0

예이 모듈은 'skip-external-locking'을 잘 처리하지만 'MySQL 전용'모듈이 아닌 일반 모듈을 사용하고 싶습니다. – sebthebert

+0

제 질문을 수정하겠습니다. – sebthebert

+1

@sethebert my.cfg 구문은 ini 파일 http://en.wikipedia.org/wiki/INI_files의 허용 된 규칙을 따르지 않는 것으로 보이며 일반 파서와 잘 작동 할 것으로 기대할 수 없습니다. 특정 솔루션이 필요할 수 있습니다. – dwarring

관련 문제