将wordpress和数据库搬到DigitalOcean
博客由hawkhost搬家至DigitalOcean系列文章:
6.将wordpress和数据库搬到DigitalOcean
目前我已经完成了在DigtialOcean添加虚拟主机,且可以用FTP来管理虚拟主机。本文将记录博客从hawkhost搬家到DigitalOcean中最重要的一步:将旧主机中备份的wordpress文件和数据库搬到DigtialOcean的服务器中,并且在访问服务器IP地址时即可看到小站的内容。
在lnmp1.2版下修改网站根目录
lnmp1.2安装成功后,默认的网站目录为默认的网站目录为/home/wwwroot/default/,假设我新建的网站目录为/home/wwwroot/new/,我现在想将网站的默认目录修改为/home/wwwroot/new/,操作方法如下:
1. 使用putty登录服务器,执行如下命令: chattr -i /home/wwwroot/default/.user.ini
2. 使用FTP登录服务器,在路径/home/wwwroot/default/下找到.user.ini,将user.ini文件改为open_basedir=/home/wwwroot/new:/tmp/:/proc/,保存并将修改后的文件回传到服务器。
3. 再putty命令行中,再执行如下命令:chattr +i /home/wwwroot/default/.user.ini
4. 用FTP在路径/usr/local/nginx/conf目录下找到nginx.conf,将其中的
root /home/wwwroot/default/; 修改为 root /home/wwwroot/new/;
5. 在putty中执行命令lnmp restart,重启lnmp。此时访问服务器IP地址时,访问的是路径root/home/wwwroot/new,但由于目前wordpress和数据库为空,看到的将是空白页面。
转移phpmyadmin文件夹
lnmp1.2安装成功后,phpmyadmin安装在/home/wwwroot/default/路径下,而我们网站的根目录为root/home/wwwroot/new/,为了今后可以直接用域名访问到phpmyadmin,需要将phpmyadmin转移到网站根目录下。
目前在root/home/wwwroot/new目录下并没有phpmyadmin文件夹,用putty或者FTP, 在网站根目录下新建文件夹phpmyadmin,然后在putty中下执行如下命令即可将phpmyadmin文件夹复制到默认网站目录下。
sudo rsync -avP /home/wwwroot/default/phpmyadmin/ /home/wwwroot/new/phpmyadmin/
网上大部分攻略都提示为了安全,建议更换phpmyadmin的文件名。
wordpress文件迁入新服务器
FTP登录服务器,将从旧主机备份到本地的网站根目录压缩档上传到/home/wwwroot/new/目录下。用putty登录服务器,执行如下命令将wordpress的压缩文件解压: unzip wordpress.zip
此时我们网站根目录对应的数据库为空,若访问服务器的IP地址,会导向wordpress的安装地址:http://IP地址/wp-admin/install.php
数据库迁入新服务器
我尝试过用putty命令行和phpmyadmin两种方法导入备份数据库,putty命令行导入虽然没有显示错误,但是实际并未成功,后来我用phpmyadmin导入数据库成功,下面分别说明这两种方法。
putty命令行导入数据库
假设备份数据库已解压缩在/ home/wwwroot/new/路径下。
mysql -u root -p //此处需要验证MySQL的密码
mysql>use sql_new //slq_new指的是添加虚拟主机时创建的数据库名称
database changed
mysql>source ./ home/wwwroot/new/backup.sql //backup.sql为备份数据库
上述命令执行完成后,命令行未提示错误,但是访问服务器IP地址又会变成一片空白。
phpmyadmin导入数据库
在现阶段,我访问 服务器IP/phpmyadmin 即可登录到phpmyadmin,选中sql_new(添加虚拟主机时创建的数据库名称)后导入数据库。这样直接导入数据库时,可能会出现“您想要上传的文件可能太大了,请参考文档来寻找解决方法。“的错误。
该错误的解决方案如下:修改PHPMyAdmin的配置文件config.inc.php,路径为/home/wwwroot/new/phpmyadmin/config.inc.php
1. 在phpmyadmin根目录下建立两个文件夹:Import,Export
2. 在config.inc.php(23行左右)找到:
$cfg[‘UploadDir’] = ”;
$cfg[‘SaveDir’] = ”;
修改为:
$cfg[‘UploadDir’] = ‘Import’;
$cfg[‘SaveDir’] = ‘Export’;
保存。
3. 将需要导入的数据库文件上传到Import文件夹里。
4. 登陆phpmyadmin系统,选中sql_new,点击导入(Import),在新出现的页面中找到“网站服务器上传文件夹”这个选项,然后选择待导入的数据库,执行后即可导入成功。
导入成功后,如果新建数据库的数据库名称/数据库用户名/数据库密码均与原网站相同的话,此时访问服务器IP地址就可以正常访问网站首页了。如果不一致,可以找到/home/wwwroot/new/wp/wp-config.php将相应的信息改成新的数据库信息,修改完成后保存并重启服务器即可。
1 2 3 4 5 6 7 8 9 10 11 12 |
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('WP_CACHE', true); //Added by WP-Cache Manager //注意若安装了WP_CACHE插件,则注意将WP的路径修改为新路径 define( 'WPCACHEHOME', '/home/wwwroot/new/wp/wp-content/plugins/wp-super-cache/' ); //Added by WP-Cache Manager define('DB_NAME', '新建数据库名称'); /** MySQL database username */ define('DB_USER', '新建数据库用户名'); /** MySQL database password */ define('DB_PASSWORD', '新建数据库密码'); |