我修改了服务器上面MYSQL/var/databasename/XXX.frm文件,,结果造成了无法读取,我使用SSH远程文件传输这个文件上去,然后这个数据库就完全不能输出数据,请问,这是什么问题?怎么解决啊?
修改frm,等于损坏了数据库,无法使用很正常。
用ssh上传之后,不能输出内容。
原因可能1.用户组是不是mysql。2.用户的权限是不是660
用ls -l命令查看数据文件去权限-rw-rw---- 1 mysql mysql 65 Apr 25 01:19 db_xxx.frm
如果不是这样,就
`cd MYSQL/var/databasename/
chown -R mysql:mysql ./*.frm
chmod -R 660 ./*.frm`
另一种解决办法:
就是下载所有的数据文件,到windows系统下mysql的db目录,然后导出整个数据库(可以通过phpmysql的export)为:db.sql(windows权限没有那么严格,个人认为)
然后到服务器,将所有的文件移走,留下数据库,接着将db.sql放在/root/目录下。使用导入sql语句到database中。mysql -uroot -p databasename </root/db.sql
这样应该就可以了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。