Mac环境下IntelliJ中Spring Boot配置H2数据库遇权限问题及咨询
问题解决:Mac下H2数据库只读文件系统错误 + IntelliJ配置H2指南
一、解决"/data: Read-only file system"错误
错误原因
Mac系统根目录(/)下的文件夹受系统完整性保护(SIP)限制,普通程序无写入权限,你配置的jdbc:h2:file:/data/demo尝试在根目录创建/data文件夹时触发权限报错。
解决方案
修改spring.datasource.url为有写入权限的路径,两种常用方式:
项目相对路径:数据库文件存放在项目目录下,方便随项目迁移
spring.datasource.url=jdbc:h2:file:./data/demo会在你的Spring Boot项目根目录下生成
data文件夹,存放H2数据库文件。用户目录路径:数据库文件存放在当前用户主目录下,权限不受限制
spring.datasource.url=jdbc:h2:file:~/h2-data/demo~代表当前用户主目录(如/Users/你的用户名/),此处拥有完全读写权限。
修改后重启应用,错误即可消除。
二、IntelliJ中配置H2数据库连接
- 打开IntelliJ的Database工具窗口(未显示的话,通过
View > Tool Windows > Database调出) - 点击窗口左上角
+号,选择Data Source > H2 - 在配置窗口中填写信息:
- URL:和
application.properties中配置的地址保持一致(比如修改后的jdbc:h2:file:./data/demo) - User:填写
sa(与配置文件一致) - Password:填写
password(与配置文件一致) - 点击
Test Connection测试连接,成功会显示绿色对勾
- URL:和
- 点击
Apply和OK完成配置,之后就能在Database窗口查看H2的表结构、执行SQL语句。
额外补充:如果需要用H2 Web控制台操作数据库,可在application.properties添加以下配置:
spring.h2.console.enabled=true spring.h2.console.path=/h2-console
启动应用后访问http://localhost:8080/h2-console,输入匹配的JDBC URL、用户名和密码即可登录操作。
内容的提问来源于stack exchange,提问作者flamant
相关产品推荐
相关产品推荐

