mysqldump: Got errno 32 on write 解决办法

在执行mysqldump 时发生 mysqldump: Got errno 32 on write 报错;

$ sudo mysqldump -u root -p ******* | gzip > /path/to/backup/db/******_`date +%y_%m_%d`.gz
-bash: /path/to/backup/db/******_`date +%y_%m_%d`.gz: No such file or directory 
Enter password:
mysqldump: Got errno 32 on write

出现32报错有两种可能,一是存储空间不足,而是path路径没有r权限

1、空间请使用df -h查看,一般都是富余的

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G  4.0K  2.0G   1% /dev
tmpfs           396M  704K  395M   1% /run
/dev/sda1       489G   80G  384G  18% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user

2、权限---这个在linux里很容易被忽略

$ sudo mkdir -p /path/to/backup/db  #创建目录

$ sudo chmod 777 /path/to/backup/db/    #分配777权限

$ sudo mysqldump -u root -p *******| gzip > /path/to/backup/db/*******_`date +%y_%m_%d`.gz  #执行 
Enter password: 

$ ls /path/to/backup/db/ -al    #查看gz文件
total 9356
drwxrwxrwx 2 root     root        4096 Jun 19 16:13 .
drwxr-xr-x 3 root     root        4096 Jun 19 16:13 ..
-rw-rw-r-- 1 seraphic seraphic 9569611 Jun 19 16:13 ******_17_06_19.gz

  

完成.

原文地址:https://www.cnblogs.com/wangbaobao/p/7049283.html