默认 Surrealdb 会在内存里存储数据,优点就是速度非常快。我们也可以配置让 surrealdb 把数据存储在磁盘上,这样存储的数据不受内存的限制,可以存储更多的数据,最近访问的数据会放在内存里作为缓存。
先试一下,执行一条查询,SELECT * FROM post; 返回的结果里有两条内容。
在运行 surrealdb 服务的终端,按一下 ctrl + c ,停止运行服务,然后再重新启动一下 surrealdb 服务。回到 HTTP 客户端,再执行一下这条查询,你会发现这回返回的结果显示数据库里并没有 post 内容。因为之前的数据是存储在内存里的,停止服务以后,数据也就不见了。
磁盘
下面再试一下,ctrl + c 停止服务,这次启动 surrealdb 服务的时候,指定一个数据库的路径,路径地址要用 file:// 作为前缀,然后是数据库的存储位置,比如 /Users/wanghao/Desktop/ninghao。
服务启动以后,会在我的桌面上创建一个 ninghao 这个目录,这个目录里有一些文件。surrealdb 会管理这个目录里的东西,它会把数据库里的数据存储在这个目录的下面。
在 HTTP 客户端,执行一段查询创建一个内容数据,CREATE post SET content = '相见时难别亦难' 。
回到终端,停止服务 surrealdb 服务,重新再启动一下。再回到 HTTP 客户端,查询一下 post ,显示数据库里有一条数据。这是因为现在 surrealdb 会把数据存储在磁盘上,所以重启服务以后,数据并不会消失。
为了方便后面测试,我们还是让 surrealdb 会数据先放在内存里。