如何解决mysqlimport: Error: 13, Can't get stat of 的问题

今儿在看mysql用户手册的时候,看到备份恢复哪里的mysqlimport的个命令时,操作后出现了一个很奇怪的问题。


代码如下:

root@zhou:/usr/local/mysql# mysqlimport -uroot -p123 -h127.0.0.1 -P3306 test backup/chen.sql
mysqlimport: Error: 13, Can't get stat of '/usr/local/mysql/data/backup/chen.sql' (Errcode: 2), when using table: chen

这里通过perror查询这个错误的原因:


代码如下:

root@zhou:/usr/local/mysql# perror 13
root@zhou:/usr/local/mysql# ll
OS error code 13: Permission denied

代码如下:

<SPAN style="FONT-SIZE: 10px">可是这里我查看了下我的权限也是没有问题的。我的备份文件在backup文档中</SPAN>

代码如下:

总用量 120
drwxr-xr-x 17 root  mysql  4096  1月 10 19:02 ./
drwxr-xr-x 22 root  root   4096  1月  8 11:34 ../
drwxr-xr-x  2 mysql mysql  4096  1月 10 17:30 backup/
drwxr-xr-x  2 root  mysql  4096  1月  8 10:39 bin/

代码如下:

<SPAN style="FONT-SIZE: 10px">这里我的解决问题的方式和过程是这样的,首先google和百度下,看是否能搞定这样的问题。然后我在使用load data infile看看是否也会出现这样的问题(这里的load命令是相通的命令)。</SPAN>

通过google和百度没有找到自己想要的答案,而我在进行load data infile的操作时,发现没有问题,所以总结这里应该不是权限的问题:


代码如下:

mysql(root@localhost:test)>load data infile '/usr/local/mysql/backup/chen.sql' into table chen;
Query OK, 6 rows affected (0.07 sec)
Records: 6 Deleted: 0 Skipped: 0 Warnings: 0

代码如下:

<SPAN style="FONT-SIZE: 10px">最后通过man 查询这个命令的问题,会发现一个想象就是这个--local命令的问题</SPAN>

代码如下:

root@zhou:/usr/local/mysql# mysqlimport -uroot -p123 -h127.0.0.1 -P3306 test backup/chen.sql
mysqlimport: Error: 13, Can't get stat of '/usr/local/mysql/data/backup/chen.sql' (Errcode: 2), when using table: chen
root@zhou:/usr/local/mysql# mysqlimport -uroot -p123 -h127.0.0.1 -P3306 test backup/chen.sql --local
test.chen: Records: 6 Deleted: 0 Skipped: 0 Warnings: 0

代码如下:

<SPAN style="FONT-SIZE: 10px">这样问题解决了,这里我们的--local的作用是</SPAN>

指定从客户端电脑读入数据文件,否则从服务器电脑读取
所以这里找到了问题的所在了。--local

(0)

相关推荐

  • PHP mysqli 增强 批量执行sql 语句的实现代码

    mysqli 增强-批量执行sql 语句 复制代码 代码如下: <?php //mysqli 增强-批量执行sql 语句 //批量执行dql    //使用mysqli的mysqli::multi_query() 一次性添加3个用户 $mysqli =new MySQLi("localhost","root","root","test");    if($mysqli->connect_error){       

  • PHP以mysqli方式连接类完整代码实例

    本文所述的是一个在PHP中以mysqli方式连接数据库的一个数据库类实例,该数据库类是从一个PHP的CMS中整理出来的,可实现PHP连接数据库类,MySQLi版,兼容PHP4,对于有针对性需要的朋友可根据此代码进行优化和修改. <?php #================================================================================================== # Filename: /db/db_mysqli.php

  • 解析在PHP中使用mysqli扩展库对mysql的操作

    1.在PHP中 使用mysqli扩展库对mysql 的dql操作 复制代码 代码如下: <?php    header("Content-type: text/html;charset=utf-8");    //mysqli操作mysql数据库(面向对象方式)    //1.创建MySQLi对象    $mysqli =new MySQLi("localhost","root","root","test&qu

  • PHP数据库操作之基于Mysqli的数据库操作类库

    此类库简单.易用,便于你自己修改和对功能的改善,能解决大部分 PHP 项目中执行的 SQL 操作. 初步工作 首先,请大家下载这个类库 M.class.php 再下载一个 Mysqli 连接数据库的类库 MysqliDb.class.php(打包下载地址)  新建一个 includes 的文件夹,将下载下来的两个 class 文件,放进去. 然后,请你在项目下创建一个 test.php 文件.注:UTF-8 文件格式 请先根据你机器的情况,填充以下代码,用于连接数据库: 复制代码 代码如下: h

  • php操作mysqli(示例代码)

    <?php define("MYSQL_OPEN_LOGS",true); class mysqliHelp { private $db; public function __construct()    {     //如果要查询日志log的话,怎么办 } public function __get($name )     {       //echo "__GET:",$name;       if(in_array($name,array("d

  • php开启mysqli扩展之后如何连接数据库

    Mysqli是php5之后才有的功能,没有开启扩展的朋友可以打开您的php.ini的配置文件. 查找下面的语句:;extension=php_mysqli.dll将其修改为:extension=php_mysqli.dll即可. 相对于mysql有很多新的特性和优势 (1)支持本地绑定.准备(prepare)等语法 (2)执行sql语句的错误代码 (3)同时执行多个sql (4)另外提供了面向对象的调用接口的方法. 下面一一用php实例进行mysqli数据库连接! 使用方法一:使用传统的面向过程

  • mysqli多查询特性 实现多条sql语句查询

    mysqli相对于mysql有很多优势,建议大家使用,如果没有了解,可以查看mysql的基础教程: mysqli连接数据库 和 mysqli预处理prepare使用 .不仅如此,mysqli更是支持多查询特性,看下面这段php代码: 复制代码 代码如下: <?php $mysqli = new mysqli("localhost","root","","new"); $mysqli->query("set

  • php写的带缓存数据功能的mysqli类

    复制代码 代码如下: <?php /** * Mysqli类 */ class db_mysqli { protected $mysqli; protected $sql; protected $rs; protected $query_num = 0; protected $fetch_mode = MYSQLI_ASSOC; protected $cache_dir = './cache/'; protected $cache_time = 1800; public function __c

  • PHP mysql与mysqli事务使用说明 分享

    mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法. 应用比较多的地方是 mysqli的事务. 比如下面的示例: 复制代码 代码如下: $mysqli = new mysqli('localhost','root','','DB_Lib2Test');$mysqli->autocommit(false);//开始事物$mysqli->query($sql1);$mysqli->query($sql2);if(!$mysqli->errno){  $m

  • mysql,mysqli,PDO的各自不同介绍

    普通的mysql连接肯定是会被抛弃的 因为每次都要防止sql注入的问题 而且相对来说比较慢 mysqli是在普通mysql的基础上做的一次优化 说实话 很成功 预处理方式完全解决了sql注入的问题 但是唯一的不足点 就是只支持mysql数据库 当然 如果你要是不操作其他的数据库或者 当然这无疑是最好的选择 PDO则是最新出来的一种 连接方式 兼容大部分数据库 也解决了sql注入 但是也有缺点 它只支持php5以上的版本 不过听说在未来的php6中 只支持这种连接 PDO统一所有数据库抽象层对象接

随机推荐