mysqlimport: Error: 13, Can''t get stat of問題的解決方法
本文介紹下對解決mysqlimport: Error: 13, Can't get stat of問題的方法進行了詳細的分析介紹,供大家參考。
在看mysql用戶手冊的時候,看到備份恢復哪裡的mysqlimport的個命令時,操作後出現了一個很奇怪的問題。
Java代碼
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查詢這個錯誤的原因:
Java代碼
root@zhou:/usr/local/mysql# perror 13
root@zhou:/usr/local/mysql# ll
OS error code 13: Permission denied
可是這裡我查看了下我的權限也是沒有問題的。我的備份文件在backup文檔中。
Java代碼
總用量 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/
解決方法:
首先google和百度下,看是否能搞定這樣的問題。然後我在使用load data infile看看是否也會出現這樣的問題(這裡的load命令是相通的命令)。
通過google和百度沒有找到自己想要的答案,而我在進行load data infile的操作時,發現沒有問題,所以總結這裡應該不是權限的問題:
m
Java代碼
ysql(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
最後通過man 查詢這個命令的問題,會發現一個想象就是這個--local命令的問題。
Java代碼
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
解決了問題,這裡--local的作用:
指定從客戶端電腦讀入數據文件,否則從服務器電腦讀取
找到了問題的所在了。--local