nextcloud重大升级,16.06升级到最新18.0.1,nextcloud重新安装

此文章仅限网站出现严重错误或者强制跳跃多版本升级的用户使用!!!操作前请先认真浏览一遍文章再考虑是否要继续!!!

一、备份网站及数据库

二、升级数据库到最新版MariaDB10.5.1

参考:http://0912itw.com/?p=2313

三、下载最新版nextcloud

下载地址:https://nextcloud.com/changelog/     下载地址与更新日志

四、清空数据库及删除网站程序(PS:保留data文件夹,这里是用户数据)

五、上传最新版nextcloud网站程序

六、内部服务器错误,连接数据库错误等问题。

内部服务器错误
服务器不能完成您的请求。
如果再次发生这种情况,请将下面的技术详细信息发送给服务器管理员。
更多细节可以在服务器日志中找到。
技术细节
远程地址:192.168.1.1
请求 ID:XlE-cp0aT2fSF2V6DEKXXXXXXXX

第一次登陆安装会有如此提示,先给予安装目录777权限即可(PS:目录权限最后再重新配置)

Error while trying to create admin user: Failed to connect to the database: An exception occurred in driver: SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'

出现以上错误一般为连接数据库出错,可给nextcloud数据库新建一个数据库用户,用新用户安装。或者说是用root安装出现此错误的话,换个用户即可。

七、安装完成!

八、将data/user/files目录下的文件迁移到新的相同目录。此时你在新的nextcloud中是看不到迁移进去的文件的。需要对用户进行文件扫描。

九、进行文件扫描,将迁移进去的文件扫描添加。

进入nextcloud目录执行如下命令

sudo -u root php occ

会有如下错误提示:

Console has to be executed with the user that owns the file config/config.php
Current user: root
Owner of config.php: apache
Try adding 'sudo -u apache ' to the beginning of the command (without the single quotes)
If running with 'docker exec' try adding the option '-u apache' to the docker command (without the single quotes)

此原因是没有使用拥有文件config/config.php的用户一起执行,将命令修改为如下即可!

sudo -u apache php occ

成功后会返回

The current PHP memory limit is below the recommended value of 512MB.
Nextcloud 18.0.1
Usage:
  command [options] [arguments]
Options:
  -h, --help            Display this help message
  -q, --quiet           Do not output any message
………………………………………… 以下省略

继续如下操作执行

sudo -u apache php occ files:scan --all #扫描所有用户的所有文件
或者
sudo -u apache php occ files:scan user #指定扫描的用户 user

扫描完成后会给出一个表格,显示出扫描到的目录数量和文件数量。此时你再刷新后台即可看到迁移进去的文件已经都出现了。到这一步我们会发现备份的数据库文件竟然没有用了。但是里面很多设置项目和分享的链接就不复存在了。

如果这些信息你是需要的那么可以单个将对应的数据库表导入到新的数据库中,因为16.06升级到18.01会多出10个数据表。直接导入旧的数据库文件会报错。

十、修改PHP 内存限制低于建议值 512MB。

编辑php.ini

memory_limit = 512M

十一、有些应用程序目录是由与 Web 服务器不同的用户拥有的。如果应用程序是手动安装的,情况可能是这样的。检查以下应用程序目录的权限:

将网站目录的所属用户改为apache

 

十二、该实例缺失了一些推荐的 PHP 模块。为提高性能和兼容性,我们强烈建议安装它们。
magick

1.安装依赖. 确保系统已经安装以下包

yum install -y libjpeg* libpng* libtiff* libungif* freetype zlib

2.yum走起

yum install ImageMagick -y

修改 /usr/local/php/etc/php.ini,第一行加上:extension=”imagick.so” 添加后如果日志中出现错误,可删除所添加的内容。即不修改php.ini

十三、数据库中的一些列由于进行长整型转换而缺失。由于在较大的数据表重改变列类型会耗费一些时间,因此程序没有自动对其更改。

sudo -u apache php occ db:convert-filecache-bigint

十四、数据库丢失了一些索引。由于给大的数据表添加索引会耗费一些时间,因此程序没有自动对其进行修复。索引修复后会大大提高相应表的查询速度。

sudo -u apache php occ db:add-missing-indices

十五、内存缓存未配置,为了提升使用体验,请尽量配置内存缓存

yum install php72w-pecl-apcu

安装完成后编辑 /home/wwwroot/nextcloud/config/config.php 文件,加上

‘memcache.local’ => ‘\OC\Memcache\APCu’,

十六、处理目录权限

chmod -R 775 /home/wwwroot/nextcloud

 

 

参考地址:OCC命令给ownCloud/Nextcloud手动添加文件

ownCloud/Nextcloud OCC命令行工具详解

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: