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 پاسخ 355 بازدید
0 امتیاز
1 پاسخ 512 بازدید
+2 امتیاز
2 پاسخ 1.5هزار بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Milad (1.3هزار امتیاز)
+1 امتیاز
1 پاسخ 199 بازدید
+2 امتیاز
2 پاسخ 865 بازدید
+1 امتیاز
2 پاسخ 1.6هزار بازدید
...