存储管理
本篇仅适用单服务器部署场景。
服务端存储数据的路径有三种类型,分别为文件存储路径、数据库存储路径、备份路径,保存在系统配置文件config.json中。
- 文件存储路径,用于保存文件的块数据,以桶文件(
.bkt
)存储,每个桶文件为固定大小。 - 数据库存储路径,用于保存MySql数据库所产生的数据文件。
- 备份路径,用于保存文件数据和数据库的备份,在必要的时候可以使用备份还原系统所有数据。
修改路径
所有的存储路径都是在系统配置文件中保存的,因此修改存储路径只需要在config.json中操作即可。
增加文件存储路径
当文件存储空间不足时,需要为服务端增加存储路径。
具体操作是:
修改文件存储路径
当需要将文件数据转移到其他路径时,可以通过修改文件存储路径来实现。
以下操作中,我们将修改前的路径称为原路径
,修改后的路径称为目标路径
。
具体操作是:
- 系统管理员登录,进入系统管理->系统维护,执行系统备份,等待完成。
- 确认
目标路径
的剩余空间大于原路径
的已使用空间,否则会造成数据转移时目标路径
空间不足。 - 关闭服务端。Windows直接在托盘菜单中关闭,Linux执行命令:
docker stop ydisks
。 - 将
原路径
下的所有.bkt文件复制到目标路径
。 - 参考配置文件说明(Windows / Linux ),在
store
字段中将原路径
修改为目标路径
,修改后需要使配置生效。 - 服务端启动完成后,使用系统管理员登录,进入系统管理->系统维护,设置文件审计任务为“完全审计”(使用编辑按钮),然后立即运行。审计成功后就可以删除
原路径
下所有文件了。
合并文件存储路径
当需要将多个文件存储路径合并为一个时,可以通过修改文件存储路径来实现。
以下操作中,我们将需要合并的路径称为原路径
,合并后的路径称为目标路径
。
具体操作是:
- 系统管理员登录,进入系统管理->系统维护,执行系统备份,等待完成。
- 确认
目标路径
的剩余空间大于所有原路径
的已使用空间,否则会造成数据转移时目标路径
空间不足。 - 关闭服务端。Windows直接在托盘菜单中关闭,Linux执行命令:
docker stop ydisks
。 - 将所有
原路径
下的.bkt文件复制到目标路径
。 - 参考配置文件说明(Windows / Linux ),在
store
字段中删除原路径
,修改后需要使配置生效。 - 服务端启动完成后,使用系统管理员登录,进入系统管理->系统维护,设置文件审计任务为“完全审计”(使用编辑按钮),然后立即运行。审计成功后就可以删除所有
原路径
下文件了。
删除文件存储路径
如果文件存储路径中没有数据,可以直接在配置文件config.json中删除。
如果文件存储路径中有数据,是不能直接删除的,否则将丢失文件数据,如需删除请执行合并文件存储路径操作。
修改数据库存储路径
如果数据库存储路径空间不足,或希望将数据库迁移到固态硬盘以获得更高的性能,可以通过修改数据库存储路径来实现。
以下操作中,我们将修改前的路径称为原路径
,修改后的路径称为目标路径
。
具体操作是:
- 系统管理员登录,进入系统管理->系统维护,执行系统备份,等待完成。
- 确认
目标路径
的剩余空间大于原路径
的已使用空间,否则会造成数据转移时目标路径
空间不足。 - 关闭服务端。Windows直接在托盘菜单中关闭,Linux执行命令:
docker stop ydisks
。 - 将
原路径
下的所有文件复制到目标路径
。 - 参考配置文件说明(Windows / Linux ),在
db
字段中将原路径
修改为目标路径
,修改后需要使配置生效。 - 服务端启动完成后,使用任意方式登录服务端,如果原有文件存在则操作完成。
修改备份路径
可以通过修改配置文件config.json,直接修改备份路径。
以下操作中,我们将修改前的路径称为原路径
,修改后的路径称为目标路径
。
具体操作是:
- 系统管理员登录,进入系统管理->基础设置->存储状态,查看存储路径的已使用空间,新的备份路径剩余空间必须大于所有存储路径的已使用空间,否则会造成备份空间不足。
- 关闭服务端。Windows直接在托盘菜单中关闭,Linux执行命令:
docker stop ydisks
。 - 将
原路径
下的所有文件复制到目标路径
。 - 参考配置文件说明(Windows / Linux ),在
backup
字段中将原路径
修改为目标路径
,修改后需要使配置生效。 - 系统管理员登录,进入系统管理->基础设置->存储状态,查看备份路径状态。
恢复数据
使用本机存储恢复数据
如果操作系统出现故障,但悦库服务端的文件存储/数据库存储路径不在操作系统分区中,则说明操作系统故障对悦库服务端的数据没有影响,这时如果重新安装操作系统可以使用本机存储直接恢复数据。
具体操作是:
- 操作系统重装后,部署悦库服务端(Windows / Linux)。
- 参考配置文件说明(Windows / Linux) ),将
store
字段修改为原有的文件存储路径,db
字段修改为原有的数据库存储路径,backup
字段修改为原有的备份路径,修改后需要使配置生效。 - 使用系统管理员登录,进入系统管理->系统维护,设置文件审计任务为“完全审计”(使用编辑按钮),然后立即运行。审计成功后说明数据恢复完成。
使用备份恢复数据
如果文件存储路径或数据库路径中的数据损坏,可以使用备份恢复数据。
具体操作是:
进入备份路径,其中存在两种格式的文件:.bkt是文件数据备份,.zip是数据库备份的压缩包。
恢复文件数据:将备份路径的所有.bkt文件复制到文件存储路径中。
恢复数据库:
进入备份路径,.zip文件的命名规则为:版本号-备份时间,选择需要恢复的版本和备份时间,解压并进入解压后的目录。将yoss和ydisk目录拷贝至数据库存储路径下,直接覆盖。
导入备份数据库。
Windows下以管理员身份运行命令提示符程序
cmd
,执行命令:注意需替换下面的"数据库存储路径"为实际路径,保留双引号。
"%YDISK_SERVER_HOME%/bin/mysql/bin/mysql" -uroot -p666666 -P2021 < "数据库存储路径/ydisk/ydisk.sql"
Linux下执行命令:
#进入ydisks容器
sudo docker exec -it ydisks /bin/bash
#数据库备份
mysql -uroot -p666666 -P2021 < /data/db/ydisk/ydisk.sql
#退出容器
exit
迁移数据
当服务端需要更换主机时,可以将现有数据全部迁移到新主机。
以下操作中,我们将迁移前的主机称为原主机
,迁移后的新主机称为新主机
。
迁移数据的具体操作是:
- 系统管理员登录
原主机
,进入系统管理->基础设置->存储状态,查看存储路径和备份路径的已使用空间,新主机
所提供的存储容量必须大于原主机
存储路径和备份路径已使用空间的总和。 - 在
新主机
上创建文件存储路径、数据库存储路径、备份路径。数据库存储路径如果是固态硬盘可以大幅度提高系统性能。文件存储路径和备份路径不能在同一块物理硬盘中,否则一旦硬盘损坏数据无法恢复。 - 查看
原主机
配置文件config.json,将store
和db
字段中路径的所有数据分别复制到新主机
中刚创建的文件存储路径、数据库存储路径中。如果原主机
中有多个文件存储路径,可以合并到新主机
文件存储路径中。 - 在
新主机
中部署悦库服务端(Windows / Linux)。 - 参考配置文件说明(Windows / Linux ),将
新主机
的store
字段修改为新的文件存储路径,db
字段修改为新的数据库存储路径,backup
字段修改为新的备份路径,修改后需要使配置生效。 新主机
中服务端启动完成后,使用系统管理员登录,进入系统管理->系统维护,设置文件审计任务为“完全审计”(使用编辑按钮),然后立即运行。审计成功后说明迁移数据完成。新主机
中进入系统管理->系统维护,执行系统备份。
远程备份
功能介绍
远程备份功能实现将悦库服务端的所有数据每日增量备份到远程服务器中,通过跨机器冗余,有效实现文件数据保护。在硬件损坏或勒索病毒攻击造成服务器数据丢失情况下,可以从远程机中恢复所有数据。
在服务端每日备份程序启动时,备份安全过滤程序可以有效识别备份原文件是否合法,如果文件被勒索病毒恶意加密则拒绝备份,避免使用被恶意加密的文件覆盖现有的有效数据。
实现方式
1. 准备
- 一台主机作为远程备份主机(4G内存/CPU无要求),其剩余存储容量应大于悦库服务端中的已使用容量。
- 确保远程备份主机和悦库服务器网络互通,且传输速度应大于10MB/S 。
- 操作系统:已在Windows7、Ubuntu18、CentOS7 及以上版本中验证通过。
2. 创建FTP服务器
我们以下提供的FTP教程中假设:
服务器IP:192.168.0.100
FTP账号:ydisk
FTP密码:666666
部署时请按照您自己的实际环境进行调整。
请根据远程备份主机的操作系统选择对应教程:Windows、Linux 。
3. 配置远程备份
使用管理员账号登录,进入 系统管理
->系统维护
->计划任务
,点击系统备份
的编辑按钮,打开配置页面:
填写FTP服务地址信息,后点击确认,然后运行系统备份
任务,立即开始远程备份。