如何将 sqlite3 数据库上传到网络服务器?

如何将 sqlite3 数据库上传到网络服务器?

我对此很陌生。我的计算机(本地服务器)中有一个 tuptime.db 文件,其中包含正常运行时间的记录。我如何将其上传到 Web 服务器并在网站上显示数据库内容。我想要 Web 服务器中的数据库从本地服务器自行更新并将其显示在网站上。

答案1

从你的其他问题我看到你使用更新时间

为了保持数据库同步,您需要在每次本地更新时将其复制到您的网络服务器。这假设您的本地计算机是唯一更新数据库的进程,并且没有其他计算机与网络服务器同步。如果需要,您可以在网络服务器上为每台本地计算机以不同的名称存储数据库。

DB 会在启动和关闭期间更新,并由 cronjob 或 systemd 计时器定期更新。您需要修改所有这些作业,以便每次更新后将文件复制到 Web 服务器。

对于关机事件,这可能有点棘手,因为当tuptime触发更新过程时网络可能已经关闭,所以您无法再将文件复制到服务器。

一旦将文件复制到 Web 服务器,您就可以(并且需要)编写一个 Web 应用程序来读取数据库的内容(最好使用 Web 用户设置的参数),然后将结果显示在表格或其他内容中。

可以使用例如复制文件scp,即:

scp /var/lib/tuptime/tuptime.db user@webserver:/var/lib/tuptime/tuptime-$HOSTNAME.db

为了使此运行无人值守,您需要将本地ssh公钥(通常~/.ssh/id_rsa.pub)附加到~user/.ssh/authorized_keys网络服务器上的文件中。

从以上几点可以看出,它并不像发出一个命令那么简单。

答案2

你应该能够使用scp /path/to/local/file [email protected]:/path/to/destination

有关 scp 命令的更多信息,请参见此处(https://help.ubuntu.com/community/SSH/TransferFiles

相关内容