玩过Alist一段时间后,就会发现数据库的重要性。一旦碰到vps宕机失联或者paas跑路收费,再重新部署时数据全丢,绝对要捶胸顿足的。如果你在部署时候设置了第三方数据库,则可以免除这些困扰。
1、第三方数据库有哪些?
bit.io、db4free、remotemysql、freesqldatabase
2、字段说明
"type": "", //数据库类型,一般可选sqlite3、mysql、postgres
"host": "", //数据库地址
"port": 0, //数据库端口号,参考段落3
"user": "", //数据库账号
"password": "", //数据库密码
"name": "", //数据库库名,没有的话一般同数据账号
"db_file": "data\\data.db", //数据库位置,sqlite3使用的,默认不修改
"table_prefix": "x_", //数据库表名前缀,默认不修改
"ssl_mode": "" //来控制SSL握手时的加密选项,默认不修改。不能连接时,参考段落4。
3、常用端口
1)MySql数据库 ,默认端口是: 3306;
2)Oracle数据库 ,默认端口号为:1521;
3)Sql Server数据库 ,默认端口号为:1433;
4)DB2数据库, 默认端口号为:5000;
5)PostgreSQL数据库, 默认端口号为:5432;
6)国产的DM达梦数据库, 默认端口号为:5236。
7)Redis数据库,默认端口号:6379;
8)Memcached数据库,默认端口号:11211 ;
9)MongoDB数据库,默认端口号:27017;
4、ssl_mode设置
如果不知道如何填,默认空白即可,不用修改。如果发现不填不能用的话自行研究要针对性解决:
1)在 MySQL 中,ssl_mode 参数是用于指定 SSL 连接的验证模式。以下是几种常见的选项:
DISABLED: 禁用 SSL 连接。
PREFERRED: 如果服务器启用了 SSL,则使用 SSL 连接;否则使用普通连接。
REQUIRED: 必须使用 SSL 连接,如果服务器不支持 SSL 连接,则连接失败。
VERIFY_CA: 必须使用 SSL 连接,并验证服务器证书的可信性。
VERIFY_IDENTITY: 必须使用 SSL 连接,并验证服务器证书的可信性和名称是否与连接的主机名匹配。
2)在 PostgreSQL 中,ssl_mode 参数用于指定客户端如何使用 SSL 连接。以下是几种常见的选项:
disable: 禁用 SSL 连接。
allow: 允许使用 SSL 连接,但不需要。
prefer: 如果服务器启用了 SSL,则使用 SSL 连接;否则使用普通连接。
require: 必须使用 SSL 连接,如果服务器不支持 SSL 连接,则连接失败。
verify-ca: 必须使用 SSL 连接,并验证服务器证书的可信性。
verify-full: 必须使用 SSL 连接,并验证服务器证书的可信性和名称是否与连接的主机名匹配。
5、一个实操示例:
1)以https://www.elephantsql.com/为例,注册登录面板,点击Create new instance创建实例,选择免费计划Tiny Turtle,输入数据库名称和分组。

创建实例
2)选择区域,我这里选择香港节点。

选择区域,创建生成
3)获取关键字段信息。以我的为例,应该这么填写:
"type": "postgres", //数据库类型
"host": "tiny.db.elephantsql.com", //数据库地址
"port": 5432, //postgres默认端口
"user": "fijougmp", //数据库账号
"password": "mKGQBCEKFMgSMwLfagv0QCGfWVNieqwp", //数据库密码
"name": "fijougmp", //数据库库名,没有的话一般同数据账号
"db_file": "data\\data.db", //数据库位置,sqlite3使用的,默认不修改
"table_prefix": "x_", //数据库表名前缀,默认不修改
"ssl_mode": "allow" //来控制SSL握手时的加密选项,默认不修改。不能连接时,参考段落4。

关键字段
以我部署在Glitch项目为例,将上述信息替换Data\config.json的对应字段。

替换data/config.json对应字段信息
这样就可以成功切换至第三方数据库了,自此再也不用担心数据丢失了。随着Repit躺平,Render要信用卡验证,Glitch是为数不多的存活能部署Alist容器,最后附赠一个Alist On Glitch项目代码。https://mypikpak.com/s/VNpdHh_ULKAVPoitPdRIQHcro1