恢复URLOS系统数据

本章节介绍两种恢复URLOS系统数据的方法,方法一:在母机上执行恢复命令;方法二:在urlos容器内部执行恢复命令。

URLOS数据库备份存放在/data/urlos/backup/路径下,而数据库账号密码信息存放在/data/urlos/master-config/database.jsonc数据库配置文件中,首先查看数据库相关信息:

  1. cat /data/urlos/master-config/database.jsonc

数据库配置内容如下:

  1. {
  2. "db_connect": {
  3. "driver":"mysql",
  4. "host":"localhost",
  5. "database":"urlos",
  6. "username":"root",
  7. "password":"gXFEnItLz4z0Sz0IjYvP7rSm1TQ9m2nip3nutVjuWvZIPVqVXTzCFLatcLO",
  8. "charset":"utf8mb4",
  9. "collation":"utf8mb4_unicode_ci",
  10. "prefix":"w_"
  11. }
  12. }

方法一:在母机上执行恢复命令

URLOS的数据库服务运行在urlos容器中,因此,我们需要使用docker exec命令来执行数据库恢复命令:

  1. docker exec -i urlos mysql -h localhost -uroot -pgXFEnItLz4z0Sz0IjYvP7rSm1TQ9m2nip3nutVjuWvZIPVqVXTzCFLatcLO urlos < /data/urlos/backup/20200409032137.sql

参数说明:

-pgXFEnItLz4z0Sz0IjYvP7rSm1TQ9m2nip3nutVjuWvZIPVqVXTzCFLatcLO:-p后面的gXFEnItLz4z0Sz0IjYvP7rSm1TQ9m2nip3nutVjuWvZIPVqVXTzCFLatcLO即数据库密码,请注意替换为自己的密码。

由于最新版本的mysql禁止在命令行中携带数据库密码,因此未来可能无法继续使用以上命令进行恢复,但是没关系,我们可以进入urlos容器内部进行数据恢复操作。

方法二:在urlos容器内部执行恢复命令

首先进入urlos容器:

  1. docker exec -it urlos bash

然后登录mysql数据库:

  1. mysql -h localhost -uroot -p urlos

输入数据库密码,登录成功后,执行恢复命令:

  1. source /data/urlos/backup/20200409032137.sql