2012-10-31 3 views
5

우분투의 최신 MySQL로드 로컬 infile 설정을 켜는 방법을 아는 사람은 누구입니까? 나는로드 로컬 infile 허용되지 않음 perl mysql

dbConnectString=dbi:mysql:orthomcl:mysqllocalinfile=1 

하지만 여전히 그것은이

내가 노력 OrthoMCL

라는 응용 프로그램에서 사용하는

DBD::mysql::st execute failed: The used command is not allowed with this MySQL version... 

를 얻을 /etc/mysql/my.cnf 파일을 편집하고

local-infile=1 

그리고 펄 코드에 추가 구성 파일 my.cnf :

sudo vim /etc/mysql/my.cnf 

[mysqld] 
user   = mysql 
pid-file  = /var/run/mysqld/mysqld.pid 
socket   = /var/run/mysqld/mysqld.sock 
port   = 3306 
basedir   = /usr 
datadir   = /var/lib/mysql 
tmpdir   = /tmp 
lc-messages-dir = /usr/share/mysql 
skip-external-locking 
local-infile = 1 
[mysql] 
#no-auto-rehash # faster start of mysql but no tab completition 
local-infile = 1 
다음

MySQL 서버를 다시 시작 :

sudo service mysql restart 
mysql stop/waiting 
mysql start/running, process 9563 

을하지만 난 여전히 얻을 :

DBD::mysql::st execute failed: The used command is not allowed with this MySQL version at ../Apps/orthomclSoftware-v2.0.3/bin/orthomclLoadBlast line 39, <F> line 12. 
The used command is not allowed with this MySQL version at ../Apps/orthomclSoftware-v2.0.3/bin/orthomclLoadBlast line 39, <F> line 12.` 

라인 (39)은 다음과 같습니다 위의 라인을 실행

$stmt->execute() or die DBI::errstr; 

:

my $sql = " 
LOAD DATA 
LOCAL INFILE \"$blastFile\" 
REPLACE INTO TABLE $sst 
FIELDS TERMINATED BY '\\t' 
"; 
my $stmt = $dbh->prepare($sql) or die DBI::errstr; 
+0

[설정로드 INFILE (http://stackoverflow.com/questions/10762239/enable- load-data-local-infile) 직면 한 문제 업데이트 @Jasper – gks

+0

위의 게시물을 업데이트하고 여러 가지 방법으로 해당 게시물을 시도했지만 아무 것도 작동하지 않는다고 언급했습니다. – Jasper

+0

'dbConnectString'은 저에게 이상한 포맷입니다. 그것은 'dbi : DriverName : database_name'과 같아야합니다. –

답변

6
dbConnectString=dbi:mysql:orthomcl:mysql_local_infile=1:localhost:3306 

내가

[client] 
     loose-local-infile=1 

이 나를 위해 일

에서 mysql.cnf 도 추가

+0

orthoMCL에 대한 제 문제도 해결했습니다. 감사. – Morlock

+0

DBI DSN에 mysql_local_infile = 1을 추가하면 충분합니다. –

관련 문제