Unsere Oracle DB-Größe beträgt rund 220 GB und es gibt zwei Tabellen, die die Binärdaten als BLOB-Spalten speichert. Eine der binären Tabellengröße ist etwa 150 GB und andere Tabelle ist 30 GB. Es hat uns sehr erschwert, tägliche Backups zu erstellen und Disaster Recovery an einem anderen Ort zu planen, da die Datenbankgröße sehr groß ist. Möchten Sie wissen, wie Sie Binärdaten aus den Tabellen separieren und diese Tabellendaten in einige zentrale Speicherbereiche verschieben können.So trennen Sie binäre Daten in Oracle DB
Antwort
Was Sie tun können, ist eine zweite RDS-Instanz zu erstellen und die 2 blob Tabellen in dieser neuen Instanz bewegen, so dass Sie mit 2 Servern werden: - Haupt Server: 30 GB - Document Server mit Blob Tabellen
Sie werden multi-AZ und tägliche Schnappschüsse auf dem Main Server verlassen und Snapshot auf wöchentliche vielleicht für das Dokument planen.
Erste: Backup aller Tabellen, außer Blob Tabellen
Sie expdp
bestimmte Tabellen verwenden können, nur für den Export wie
expdp <master user>/<master pass>@source.cnrsdab7emat.us-east-1.rds.amazonaws.com:1521/DB schemas=SCOTT exclude=TABLE:"IN ('BLOB1', 'BLOB2')" directory= data_pump_dir dumpfile=dump.dmp
Zweite: Erstellen Sie neue Instanz und Import-Dump
erstellen Achten Sie bei einer neuen Datenbankinstanz darauf, genügend Speicherplatz bereitzustellen. Sie müssen nicht unbedingt die DMP-Dateien übertragen und Sie können die DB über die Netzwerkverbindung
create database link to_rds connect to USERX identified by PASSX using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=source.cnrsdab7emat.us-east-1.rds.amazonaws.com)(PORT=1521))(CONNECT_DATA=(SID=<ORCL_SID>)))';
laufen impdp von der neuen Instanz
impdp <master user>/<master pass>@target.cnrsdab7emat.us-east-1.rds.amazonaws.com:1521/NEWDB network_link=to_rds directory=data_pump_dir dumpfile=dump.dmp
DRITTE importieren: Reinigen Sie Ihren alten db
ALTER
die Tabelle, um die übertragenen Tabellen zu löschen.
Durch diese Schritte können Sie möglicherweise die Blobdaten aus der Datenbank in einen Objektspeicher wie S3 verschieben. Die vorhandene BLOB-Tabelle könnte durch eine Tabelle ersetzt werden, die Zeiger (URIs) für die Objekte in S3 enthält. – jbird
wahr, könnte sein; oder woanders wie aws elastic suchen und von der Suche profitieren, wenn Dateien indiziert werden können; Wenn Dateien nicht indiziert werden können, ist s3 eine gute Speicheroption –