PHPMyAdmin说:此MySQL版本不允许使用used命令

时间:2014-04-24 07:21:21

标签: php mysql phpmyadmin

我是MySQL新手的Java开发人员。

我想使用PHPMyAdmin执行加载数据操作。加载数据脚本经过验证,因为它在我的Windows操作系统配置上运行良好。在尝试从CSV加载数据时,我得到了:

  

此MySQL版本不允许使用used命令

版本详情如下

Mysql Server版本: 5.5.34-0

操作系统: ubuntu0.13.04.1(Ubuntu)

我已完成编辑my.cnf,如下所示:

[mysql]
local-infile    =1
#no-auto-rehash # faster start of mysql but no tab completition
.......................

[mysqld]
#
# * Basic Settings
#
local-infile    =1
user        = mysql
.........................

[client] 
loose-local-infile=1
root
port        = 3306
.........................

我尝试多次重启apache和mysql -  sudo服务mysql重启  sudo service apache2 restart

对我来说没有什么能帮助我使用phpmyadmin执行操作。使用下面的命令

mysql -u root -p --local-infile test

我能够通过mysql提示成功执行加载数据操作。由于我在块中有多个CSV,并且每个块都有SQL加载脚本,所以我想使用phpmyadmin一次性运行它(用$分隔加载脚本)。

请帮我解决这个问题。 我已经在堆栈溢出下经历了以下答案

  1. ERROR 1148: The used command is not allowed with this MySQL version

  2. LOAD DATA LOCAL INFILE gives the error The used command is not allowed with this MySQL version

  3. [UPDATE]

    变量local_infile显示为' ON',我已在phpmyadmin上使用SQL查询验证了这一点

    SHOW VARIABLES LIKE "local%"
    

    加载脚本

    LOAD DATA LOCAL INFILE 'full_dir_path/man_final.csv'
    INTO TABLE `manufact_t` 
    FIELDS TERMINATED BY ',' 
    ENCLOSED BY '"' 
    ESCAPED BY '\\' 
    LINES TERMINATED BY '\r\n'
    IGNORE 1 LINES
    (man_sr,man_name, address, phone, fax, email, url,subdivision, @man_parent, man_id)
    set man_parent=0;
    

3 个答案:

答案 0 :(得分:7)

我的朋友。这个错误的原因很少。

  1. php.ini 的错误值为 mysql.allow_local_infile 。必须是 - mysql.allow_local_infile =开启

  2. 如果您在本地工作,可以尝试从 SQL查询中删除 LOCAL 。也许 MySQL 服务器设置不允许您使用 LOCAL 关键字

  3. 仅当您使用cPanel 时:问题是内置于cPanel接口的phpMyAdmin不使用使用apache构建的php。所以你可以整天重建apache并且它不会改变php的编译方式[来自cPanel论坛]

  4. 希望这会对你有所帮助。

答案 1 :(得分:1)

我的朋友,

请告诉我们以下步骤: -

  1. 首先,删除当前安装的MySQL服务器

  2. 在终端sudo中运行命令apt-get --purge删除mysql-server

  3. 继续获取编译和安装源所需的源文件和其他包。

  4. 运行命令sudo apt-get install mysql-source-5.5 build-essential libncurses5-dev cmake

  5. 5.转到源所在的目录。

    从源代码安装时最好的部分是您可以根据需要进行配置,如DENABLED_LOCAL_INFILE

    请点击以下链接: -

    http://www.sudo-juice.com/install-mysql-5-5-from-source-ubuntu-linux/

答案 2 :(得分:0)

我通过删除LOCAL关键字修复了此问题。请从命令中删除LOCAL关键字,它适用于mysql服务器版本5.5.34-0。