Oracle
برای اضافه کردن یک اتصال پایگاهداده، روی آیکون چرخدنده در بالا سمت راست کلیک کنید و به Admin settings > Databases > Add a database بروید.
نسخههای پشتیبانیشده
متابیس از قدیمیترین نسخهٔ تحت پشتیبانی تا آخرین نسخهٔ پایدار پشتیبانی میکند. Oracle's Release Schedule of Current Database Releases را ببینید.
ویرایش جزئیات اتصال
میتوانید هر زمان این تنظیمات را ویرایش کنید؛ فقط یادتان باشد تغییرات را ذخیره کنید.
Connection string
میتوانید یک connection string اینجا paste کنید تا فیلدهای باقیمانده بهطور خودکار پر شوند.
Display name
نام نمایشی پایگاهداده در رابط کاربری متابیس.
Host
آدرس IP پایگاهداده یا نام دامنهٔ آن (مثلاً esc.mydatabase.com).
Port
پورت پایگاهداده؛ مثلاً 1521.
Oracle system ID (SID)
معمولاً چیزی شبیه ORCL یا XE. اگر از service name استفاده میکنید، این مقدار اختیاری است.
Oracle service name
یک alias اختیاری TNS.
Username
نام کاربری پایگاهداده برای اکانتی که میخواهید با آن به دیتابیس وصل شوید. میتوانید چند اتصال مختلف به همان پایگاهداده بسازید که هرکدام از یک کاربر متفاوت با مجموعهٔ متفاوتی از سطوح دسترسی (privileges) استفاده میکنند.
Password
رمز عبوری که برای نام کاربری اتصال به پایگاهداده استفاده میکنید.
استفاده از اتصال امن (SSL)
میتوانید هم احراز هویت سمت کلاینت و هم سمت سرور (mutual authentication) را فعال کنید.
اتصال به Oracle Cloud Autonomous Database
اگر پایگاهدادهٔ خود را طوری پیکربندی کردهاید که به mutual TLS (mTLS) نیاز داشته باشد، به یک wallet احتیاج دارید. برای دانلود wallet:
- به Oracle Autonomous Database خود بروید.
- وارد صفحهٔ جزئیات پایگاهداده شوید.
- روی DB connection کلیک کنید.
- wallet را دانلود کنید.
- برای keyfile یک رمز عبور بسازید.
- فایل
keystore.jksرا به جایی که تنظیمات متابیس را نگه میدارید کپی کنید. - با استفاده از
JAVA_OPTSمحل و رمز keystore را به متابیس معرفی کنید (برای اطلاعات بیشتر دربارهٔ keystoreها بخش بعدی را ببینید). - در متابیس و در صفحهٔ اتصال داده، مقادیر
host،portوservice_nameرا وارد کنید. این مقادیر را میتوانید در فایلtsnnames.oraپیدا کنید.
احراز هویت کلاینت با keystore
برای اینکه سرور (سرور Oracle) بتواند هویت کلاینت (متابیس) را احراز کند، باید یک فایل keystore پیکربندی کنید که کلید خصوصی کلاینت داخل آن باشد.
شما کلید خصوصی کلاینت را در keystore وارد میکنید (بهجای اینکه یک روت CA را در truststore ایمپورت کنید). گزینههای JVM زیر را برای متابیس تنظیم کنید:
-Djavax.net.ssl.keyStore=/path/to/keystore.jks
-Djavax.net.ssl.keyStoreType=JKS \
-Djavax.net.ssl.keyStorePassword=<keyStorePassword>
میتوانید این گزینهها را با متغیر محیطی JAVA_OPTS تنظیم کنید، مثلاً:
JAVA_OPTS: "-Djavax.net.ssl.keyStore=/scripts/keystore.jks -Djavax.net.ssl.keyStoreType=JKS -Djavax.net.ssl.keyStorePassword=<keyStorePassword>"
بعد از انجام این تنظیمات، سرور Oracle هنگام اتصال متابیس از طریق SSL، هویت متابیس را با استفاده از کلید خصوصی احراز میکند.
احراز هویت سرور با truststore
برای اینکه کلاینت (متابیس) بتواند هویت سرور (سرور Oracle) را احراز کند، ممکن است لازم باشد یک فایل truststore پیکربندی کنید که روتسرتیفیکیت سرور داخل آن باشد تا JVMای که متابیس روی آن اجرا میشود به زنجیرهٔ گواهی آن اعتماد کند. برای مدیریت فایلهای key و truststore، ایمپورت گواهیها و غیره، به مستندات Oracle دربارهٔ keytool مراجعه کنید.
برای اطلاعات بیشتر دربارهٔ راهاندازی truststore برای نمونههای Oracle روی AWS RDS، راهنمای آمازون را ببینید.
اگر لازم است با پایگاهدادههای دیگری هم از طریق SSL متصل شوید، بهجای ساختن یک truststore جدید، احتمالاً بهتر است گواهی CA مربوط به RDS را به truststore موجود خود (که معمولاً نامش cacerts است) اضافه کنید.
نسخههای پشتیبانیشدهٔ پایگاهدادهٔ Oracle و درایور Oracle
- نسخهٔ درایور: حداقل نسخهٔ درایور Oracle باید 19c باشد، فارغ از اینکه از چه نسخهای از Java یا Oracle Database استفاده میکنید.
- نسخهٔ پایگاهداده: حداقل نسخهٔ پایگاهداده باید 19c باشد، چون Oracle نسخههای قبل از 19 را دیگر پشتیبانی نمیکند.
دانلود JAR درایور Oracle JDBC
میتوانید درایور JDBC را از صفحهٔ دانلود درایور JDBC اوراکل دریافت کنید.
پیشنهاد میکنیم از فایل ojdbc8.jar استفاده کنید.
افزودن JAR درایور Oracle JDBC به پوشهٔ plugins متابیس
در دایرکتوری متابیس (دایرکتوریای که فایل metabase.jar را در آن نگه میدارید و اجرا میکنید)، یک پوشه با نام plugins بسازید (اگر از قبل وجود ندارد).
فایل JARی که دانلود کردهاید (ojdbc8.jar) را به پوشهٔ plugins منتقل کنید و متابیس را ریاستارت کنید. متابیس هنگام راهاندازی بعدی، بهصورت خودکار درایور Oracle را شناسایی و فعال میکند.
زمانی که متابیس را از روی JAR اجرا میکنید
بهطور پیشفرض، پوشهٔ plugins با نام plugins و در همان مسیری که فایل JAR متابیس قرار دارد ساخته میشود.
برای مثال، اگر متابیس را از دایرکتوری /app/ اجرا میکنید، باید فایل JAR درایور Oracle را به /app/plugins/ منتقل کنید:
# example directory structure for running Metabase with Oracle support
/app/metabase.jar
/app/plugins/ojdbc8.jar
زمانی که متابیس را با Docker اجرا میکنید
فرآیند افزودن پلاگینها در حالت Docker هم مشابه است، با این تفاوت که باید پوشهٔ plugins را mount کنید. برای جزئیات بیشتر، راهنما را ببینید.
بخش خطر (Danger zone)
Danger zone را ببینید.