0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

در یک پروژه جاوا از دیتابیس H2 در حالت in-memory با url connection زیر استفاده می کنم:

jdbc:h2:mem:db

بصورت ناگهانی و تصادفی پیغام خطای زیر رخ می دهد و کلا دیتابیس H2 از کار می افتد:

org.h2.jdbc.JdbcSQLException: Table "XYZ" not found

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

بدلیل اینکه connection url دیتابیس h2 بصورت jdbc:h2:mem:db تعریف شده است، پس از اتمام کار آخرین اتصال دیتابیس، کل محتوای دیتابیس موجود در حافظه از بین می رود. برای نگه داشتن محتوای دیتابیس h2 در این حالت تا زمانی که jvm بالا است باید پارامتر DB_CLOSE_DELAY=-1 را به انتهای connection url دیتابیس خود اضافه کنید:

jdbc:h2:mem:db;DB_CLOSE_DELAY=-1

سوالات مشابه

0 امتیاز
1 پاسخ 486 بازدید
0 امتیاز
1 پاسخ 615 بازدید
+2 امتیاز
2 پاسخ 1.9هزار بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط Milad (1.3هزار امتیاز)
+1 امتیاز
1 پاسخ 306 بازدید
+2 امتیاز
2 پاسخ 1.0هزار بازدید
+1 امتیاز
2 پاسخ 1.8هزار بازدید
...