前几天网站备案被注销了,只有暂时迁移到国外再做打算,换了两台VPS,第一台用服务商配置好的环境+Kloxo管理平台,可能内存少点,或者我哪里没有设置好,导致用不到几个小时就访问不了,又得重启VPS才行,所以前两天会出现偶尔访问不了博客的情况。
今天刚把第二台VPS的环境配置好,网站迁移过来,在美国洛杉矶机房。现在这台的vps内存稍大点,应该可以确保平稳运行了,速度也勉强可以。
这次博客搬家出现了点小情况,不过还是顺利解决了。
这次网站搬家采用直接打包mysql数据库和网页文件的形式进行迁移,上传好mysql data目录里面的网站数据库至VPS上mysql存放数据库的目录里面,解压就行。我的VPS存放数据库的路径是 /usr/local/mysql/var。
上传好网站数据,解压,配置好数据库链接参数就行,网站就能正常连接上了,我本以为这已经是顺利迁移完成了,但后来操作的时候,发现只能读取数据库的内容,不能更改写入任何信息,提示#1036 - Table '* ' is read only (*号为任意表),也就是说表只有只读属性。
通过SSH,给数据库文件777权限,dedeadmin是我的数据库文件夹
chmod -R 0777 /usr/local/mysql/var/dedeadmin/
给数据库目录的所属用户和组改为MySQL
chown -R mysql:mysql dedeadmin
但是这样还不能更改数据库,首先,找到mysqladmin所在位置,一般都在mysql/bin下面,我的在/usr/local/mysql/bin 里面,还需要运行以下命令:
./mysqladmin -u root -p flush-tables
之后输入root账号的密码,马上就好了,没有任何任何提示,然后测试一下,能正常读写,搬家也就顺利完成。
--转自