Halo是默认使用H2 Database的,虽然也支持MySQL,但是个人认为博客系统没必要用MySQL,毕竟只是一个单纯的博客而已。H2不仅不需要单独安装,而且配置极其简单,下面介绍一下Halo配合H2使用的基本操作。

配置

在安装Halo之前是需要简单配置一下H2的,在resources/application.yaml里面,我们可以先在本地电脑上修改之后在上传到服务器直接部署,也可以先上传到服务器之后,使用vim等编辑器部署,看你习惯吧。

  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    # H2database 驱动
    driver-class-name: org.h2.Driver
    url: jdbc:h2:file:~/halo/halo
    username: sa
    password: 123456
  h2:
    console:
      settings:
        web-allow-others: true
      path: /h2-console
      enabled: true
  1. 需要修改usernamepassword,为了安全嘛,所以千万不要用默认的。
  2. 在下面的h2节点下就是配置H2在线控制台了,如果需要在外网访问,就得把web-allow-others改成true
  3. path为H2控制台的访问路径。
  4. 如果要使用H2控制台就把enabled改成true
  5. 建议在有需要的时候再打开H2控制台。

登录到H2控制台

Halo启动完成之后,访问你的ip:8090/h2-console就会进入到登录,如图。
H2 登录

需要注意的是,JDBC URL一定不要搞错了,Halo默认的是jdbc:h2:~/halo/halo,用户名和密码就是你在application.yaml里面设置的,然后点击连接就进入到控制台了。

基本操作

其实不得不说H2的控制台真的很反人类,很不好用,基本的查询和修改看下面的图吧,有批注。

备份数据库

备份数据库有两种方式,第一种算比较笨的方式了,直接到服务器的~/halo下面备份.db结尾的数据库物理文件就行了,第二种就是使用H2控制台的备份功能。

使用H2控制台的备份功能

首先,先到第一张登录图,上方有个工具按钮,点进去就可以看到备份了,我们这里将SQL脚本备份出来就行了,数据库物理文件没必要。

需要修改一下源数据库 URL,默认的是jdbc:h2:~/halo/halo,还有用户名和密码,然后点击运行就可以导出到指定的目录了。

结尾

一般情况下,我们也只需要知道上面的操作就行了,其他的不需要过多的了解。当然,虽然这个控制台看起来有点鸡肋,但是在某些时候还是非常有帮助的,比如密码忘了,就可以到控制台修改。