Oracle 还原库
数据库一般有两种常见故障介质损坏人为失误 防止介质损坏一般使用Data Guard等技术防止人为失误,可以使用Oracle闪回功能. 但是人
数据库一般有两种常见故障
介质损坏
人为失误
防止介质损坏一般使用Data Guard等技术
防止人为失误,可以使用Oracle闪回功能.
但是人为失误一旦不能通过闪回恢复,就需要使用Rman恢复了。
使用Rman恢复,想想那个恢复速度和自己窘迫的样子还有里三层外三层的老板,领导,同事..
为了避免这个情况,可以使用另外一台服务器,做一个Oracle的还原库.
主库每隔一段时间,将归档日志推送至还原库的指定目录(scp,rsync,我们使用的是小花狸监控软件)
还原库每隔一段时间,应用归档日志.
也就是说,还原库的数据总是落后于生产数据库.类似于一个延迟的DataGuard。
我们配置的还原库落后于生产数据库6-9个小时.
从还原库恢复人为错误,一般可以控制在30分钟之内.
而从Rman异机恢复,估计需要4-5个小时.
制作还原库一般有下面几个步骤
1.卸载还原库已经存在的数据库(如果还原库存在数据库实例)
shutdown abort;
startup mount exclusive restrict;
alter system enable restricted session;
drop database;
2.使用Rman备份生产数据库
CONFIGURE DEVICE TYPE DISK PARALLELISM 5 BACKUP TYPE TO BACKUPSET;
sql 'alter system archive log current';
BACKUP AS COMPRESSED BACKUPSET DATABASE ;
3.在$ORACLE_HOME/dbs目录下,新建一个文件(init$SID.ora)
文件内仅仅有一行SID的配置
db_name=mvbox
4.恢复spfile
先从Rman备份中,恢复spfile
[oracle@localhost/data/IP/2015_09_25]$rman target /
Recovery Manager: Release 10.2.0.4.0 - Production on Fri Sep 25 17:26:40 2015
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database (not started)
RMAN> startup nomount;
Oracle instance started
Total System Global Area 171966464 bytes
Fixed Size 2082496 bytes
Variable Size 113248576 bytes
Database Buffers 50331648 bytes
Redo Buffers 6303744 bytes
RMAN> restore spfile to '/home/oracle/app/oracle/product/10.2.0/db_1/dbs/spfilemvbox.ora' from '/data/IP/2015_09_25/o1_mf_nnsnf_TAG20150925T134231_c09s9rq2_.bkp';
Starting restore at 25-SEP-15
using channel ORA_DISK_1
channel ORA_DISK_1: autobackup found: /data/IP/2015_09_25/o1_mf_nnsnf_TAG20150925T134231_c09s9rq2_.bkp
channel ORA_DISK_1: SPFILE restore from autobackup complete
Finished restore at 25-SEP-15
将spfile转换为pfile,然后修改相关的目录
create pfile='/tmp/pfile.ora' from spfile;
vim /tmp/pfile.ora 主要是修改相关路径
然后使用pfile启动数据库至nomount状态,由修改过的pfile再生成spfile
5.恢复控制文件
RMAN> restore controlfile from '/data/IP/2015_09_25/o1_mf_ncnnf_TAG20150925T134231_c09s9pms_.bkp';
Starting restore at 25-SEP-15
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=1640 devtype=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
output filename=/data/oracledata/flash_recovery_area/control01.ctl
Finished restore at 25-SEP-15
RMAN> shutdown
Oracle instance shut down
RMAN> startup mount;
connected to target database (not started)
Oracle instance started
database mounted
Total System Global Area 53687091200 bytes
Fixed Size 2184048 bytes
Variable Size 4546628752 bytes
Database Buffers 49123688448 bytes
Redo Buffers 14589952 bytes
RMAN>
6.还原数据文件,并恢复
将生产数据库的归档日志也拷贝到指定的目录
RMAN> catalog start with '/data/IP';
生产数据库的文件都放在/dbdata/oracledata/mvbox/挂载点
而还原库的数据文件在/data/oracledata/oradata/mvbox/挂载点
在生产数据库运行查询
select
'set newname for datafile ' || file_id ||
' to ''' ||
replace(file_name,'/dbdata/oracledata/mvbox','/data/oracledata/oradata/mvbox')||''';'
from dba_data_files;
然后根据这个查询的结果,拼出还原库执行的命令
先还原数据文件
run{
CONFIGURE DEVICE TYPE DISK PARALLELISM 5 BACKUP TYPE TO BACKUPSET;
set newname for datafile 4 to '/data/oracledata/oradata/mvbox/users01.dbf';
set newname for datafile 3 to '/data/oracledata/oradata/mvbox/sysaux01.dbf';
set newname for datafile 1 to '/data/oracledata/oradata/mvbox/system01.dbf';
set newname for datafile 5 to '/data/oracledata/oradata/mvbox/system02.dbf';
set newname for datafile 6 to '/data/oracledata/oradata/mvbox/sysaux02.dbf';
set newname for datafile 7 to '/data/oracledata/oradata/mvbox/users02.dbf';
set newname for datafile 8 to '/data/oracledata/oradata/mvbox/users03.dbf';
set newname for datafile 9 to '/data/oracledata/oradata/mvbox/users04.dbf';
set newname for datafile 10 to '/data/oracledata/oradata/mvbox/users05.dbf';
set newname for datafile 12 to '/data/oracledata/oradata/mvbox/users06.dbf';
set newname for datafile 13 to '/data/oracledata/oradata/mvbox/system03.dbf';
set newname for datafile 14 to '/data/oracledata/oradata/mvbox/sysaux03.dbf';
set newname for datafile 27 to '/data/oracledata/oradata/mvbox/users19.dbf';
set newname for datafile 15 to '/data/oracledata/oradata/mvbox/users07.dbf';
set newname for datafile 16 to '/data/oracledata/oradata/mvbox/users08.dbf';
set newname for datafile 17 to '/data/oracledata/oradata/mvbox/users09.dbf';
set newname for datafile 18 to '/data/oracledata/oradata/mvbox/users10.dbf';
set newname for datafile 19 to '/data/oracledata/oradata/mvbox/users11.dbf';
set newname for datafile 20 to '/data/oracledata/oradata/mvbox/users12.dbf';
set newname for datafile 21 to '/data/oracledata/oradata/mvbox/users13.dbf';
set newname for datafile 22 to '/data/oracledata/oradata/mvbox/users14.dbf';
set newname for datafile 23 to '/data/oracledata/oradata/mvbox/users15.dbf';
set newname for datafile 24 to '/data/oracledata/oradata/mvbox/users16.dbf';
set newname for datafile 25 to '/data/oracledata/oradata/mvbox/users17.dbf';
set newname for datafile 26 to '/data/oracledata/oradata/mvbox/users18.dbf';
set newname for datafile 28 to '/data/oracledata/oradata/mvbox/users20.dbf';
set newname for datafile 33 to '/data/oracledata/oradata/mvbox/users21.dbf';
set newname for datafile 34 to '/data/oracledata/oradata/mvbox/users22.dbf';
set newname for datafile 35 to '/data/oracledata/oradata/mvbox/undotbs.dbf';
restore database;
switch datafile all;
}
找到生产数据库传输过来的归档日志文件,找到最后一个文件
恢复到最后一个归档日志文件序列.

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

La durée de conservation des journaux de la base de données Oracle dépend du type de journal et de la configuration, notamment : Redo logs : déterminé par la taille maximale configurée avec le paramètre "LOG_ARCHIVE_DEST". Redo logs archivés : Déterminé par la taille maximale configurée par le paramètre "DB_RECOVERY_FILE_DEST_SIZE". Redo logs en ligne : non archivés, perdus au redémarrage de la base de données et la durée de conservation est cohérente avec la durée d'exécution de l'instance. Journal d'audit : Configuré par le paramètre "AUDIT_TRAIL", conservé 30 jours par défaut.

Exigences de configuration matérielle du serveur de base de données Oracle : Processeur : multicœur, avec une fréquence principale d'au moins 2,5 GHz Pour les grandes bases de données, 32 cœurs ou plus sont recommandés. Mémoire : au moins 8 Go pour les petites bases de données, 16 à 64 Go pour les tailles moyennes, jusqu'à 512 Go ou plus pour les grandes bases de données ou les charges de travail lourdes. Stockage : disques SSD ou NVMe, matrices RAID pour la redondance et les performances. Réseau : réseau haut débit (10GbE ou supérieur), carte réseau dédiée, réseau à faible latence. Autres : alimentation stable, composants redondants, système d'exploitation et logiciels compatibles, dissipation thermique et système de refroidissement.

La quantité de mémoire requise par Oracle dépend de la taille de la base de données, du niveau d'activité et du niveau de performances requis : pour le stockage des tampons de données, des tampons d'index, l'exécution d'instructions SQL et la gestion du cache du dictionnaire de données. Le montant exact dépend de la taille de la base de données, du niveau d'activité et du niveau de performances requis. Les meilleures pratiques incluent la définition de la taille SGA appropriée, le dimensionnement des composants SGA, l'utilisation d'AMM et la surveillance de l'utilisation de la mémoire.

Pour créer une tâche planifiée dans Oracle qui s'exécute une fois par jour, vous devez effectuer les trois étapes suivantes : Créer une tâche. Ajoutez un sous-travail au travail et définissez son expression de planification sur "INTERVAL 1 DAY". Activez le travail.

La quantité de mémoire requise pour une base de données Oracle dépend de la taille de la base de données, du type de charge de travail et du nombre d'utilisateurs simultanés. Recommandations générales : petites bases de données : 16 à 32 Go, bases de données moyennes : 32 à 64 Go, grandes bases de données : 64 Go ou plus. D'autres facteurs à prendre en compte incluent la version de la base de données, les options d'optimisation de la mémoire, la virtualisation et les meilleures pratiques (surveiller l'utilisation de la mémoire, ajuster les allocations).

Les besoins en mémoire d'Oracle Database dépendent des facteurs suivants : taille de la base de données, nombre d'utilisateurs actifs, requêtes simultanées, fonctionnalités activées et configuration matérielle du système. Les étapes permettant de déterminer les besoins en mémoire incluent la détermination de la taille de la base de données, l'estimation du nombre d'utilisateurs actifs, la compréhension des requêtes simultanées, la prise en compte des fonctionnalités activées et l'examen de la configuration matérielle du système.

Les écouteurs Oracle sont utilisés pour gérer les demandes de connexion client. Les étapes de démarrage comprennent : Connectez-vous à l'instance Oracle. Recherchez la configuration de l'écouteur. Utilisez la commande lsnrctl start pour démarrer l'écouteur. Utilisez la commande lsnrctl status pour vérifier le démarrage.

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())
