手动升级 NextCloud 19.0.2 的步骤

强烈推荐手动升级,因为由于在国内连接国外的 NextCloud 服务器在线升级,网络问题等原因真的会容易出现各种更新失败的问题,之后解决问题就更麻烦。

升级 NextCloud 之前,首先要考虑备份数据库,除非数据库并不那么重要,可以不用备份数据库。比如我自己使用的 NextCloud 的数据库实际上不是那么的重要。因为现阶段我主要使用的功能是存储文件,PC端也有同步盘,所以只要我的文件还在,没有丢失,数据库实际上并不那么的重要。除非我们的资料文件记录了许多的版本,而且我们重度使用文件版本,就必需备份好数据库。我没有备份数据库的最根本的原因,还是因为懒!并一直认为升级会顺利完成的,存在侥幸的心理。

从 NextCloud 19.0.1 升级到 NextCloud 19.0.2

如果你使用的版本是 NextCloud 19.0.1 的话,强烈建议升级到 NextCloud 19.0.2 。新版本修复了很多问题。我的运行环境是 CentOS7 + Apache + MySQL + PHP

参考官方的步骤方法

https://docs.nextcloud.com/server/19/admin_manual/maintenance/manual_upgrade.html

1、停止服务器和计划任务

停止 httpd

systemctl stop httpd

停止 cron.php 计划任务

查看 apache 执行的计划任务,用 # 注释掉,保存。

crontab -u apache -e

2、备份旧版本文件

重命名 nextcloud 目录为 nextcloud-old

3、上传新版本文件

使用 WinSCP 上传新版 nextcloud 19.0.2 所有文件到服务器 nextcloud 目录。

4、恢复备份文件与应用

从备份目录 nextcloud-old 复制配置文件到 nextcloud 对应目录

cp /var/www/html/nextcloud-old/config/config.php /var/www/html/nextcloud/config/

如有安装第三方应用,从备份目录 nextcloud-old 移动第三方应用到 nextcloud 对应目录

mv /var/www/html/nextcloud-old/apps/onlyoffice /var/www/html/nextcloud/apps/

从备份目录 nextcloud-old 移动 data 目录到 nextcloud 对应目录

mv /var/www/html/nextcloud-old/data /var/www/html/nextcloud/

5、授予权限

进入 html 目录

cd /var/www/html

授予权限

chown -R apache:apache nextcloud
find nextcloud/ -type d -exec chmod 750 {} \;
find nextcloud/ -type f -exec chmod 640 {} \;

重启 httpd

systemctl restart httpd

6、执行升级

必需进入 nextcloud 目录进行升级

进入 nextcloud 目录

cd /var/www/html/nextcloud

执行升级

sudo -u apache php occ upgrade

升级完成后,登录管理页面,检查 nextcloud 的版本号是否已经升级成功,以及检查第三方应用。

7、恢复计划任务

查看 apache 计划任务,把 # 注释去掉,保存。

crontab -u apache -e

8、升级完成后删除旧文件

顺利完美升级之后,我们再决定删除 nextcloud-old 目录。

发表评论

电子邮件地址不会被公开。 必填项已用*标注