Vault Warden用的时间长了,数据也多了,反正闲着也是闲着,索性把数据也一并迁移到Mysql上。

以下操作均来自于官方Wiki

1.导出sqlite中的原有数据

sqlite3 db.sqlite3 .dump | grep "^INSERT INTO" | grep -v "__diesel_schema_migrations" > sqlitedump.sql ; echo -ne "SET FOREIGN_KEY_CHECKS=0;\n$(cat sqlitedump.sql)" > mysqldump.sql

2.创建Mysql数据库及用户

CREATE DATABASE vaultwarden CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'vaultwarden'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL ON `vaultwarden`.* TO 'vaultwarden'@'1.1.1.1';
FLUSH PRIVILEGES;

3.导入数据库

cat mysqldump.sql | mysql -u root -p vaultwarden

4.配置vaultwarden连接Mysql

在环境变量中加入DATABASE_URL=mysql://vaultwarden:[email protected]/vaultwarden即可。

这里需要注意的是,如果密码中包含以下字符的话,需要进行urlencode,
例如密码为1!23456,database_url中应写为1%2123456

!#$%&'()*+,/:;=?@[]
%21%23%24%25%26%27%28%29%2A%2B%2C%2F%3A%3B%3D%3F%40%5B%5D
Last modification:September 9, 2022
如果觉得我的文章对你有用,请随意赞赏