在《MySQL从入门到精通》例14.13题,有 mysqldump -T C:/ test person -u root -p 语句。直接在管理员模式cmd中写入,会报错 mysqldump: Got error: 1: Can't create/write to file 'C:\person.txt' (Errcode: 13 - Permission denied) when executing 'SELECT INTO OUTFILE' 。
通过在mysql输入 show variables like '%secure%'; 语句,看到secure-file-priv值为空。
进入 C:\ProgramData\MySQL\MySQL Server 5.7 文件夹下的my.ini 文件,找到secure-file-priv语句。
将文件夹修改为 “C:/backup”。这里的backup文件夹是我自己随便建立的,因为把生成的文件直接放在C盘下会比较乱。自己可以随便建其它的文件夹。
关闭MySQL,cmd。重新以管理员身份打开cmd,输入 mysqldump -T C:/backup test person -u root -p 。由于刚才要求把导出的文件放在C盘的backup文件夹下。因此14.13题的语句需要添加 backup 。执行,没有报错。
打开backup文件夹,看到person.sql和person.txt文件。
打开这两个文件: