feat(clienti): add Oracle XE PDB recreare scripts and audit cleanup

- Complete PDB export/import workflow (16 scripts in clienti/oracle-xe-21c/import/)
- Recreare PDB script with step-by-step guide (recreare_pdb.sql)
- Universal audit cleanup script for Oracle XE 11g-21c (cleanup_audit.sql)
- Troubleshooting guide with all lessons learned (depanare-ora-12954-spatiu.md)
- Fixed: DIRECTORY grant syntax, DBMS_LOCK grant, remap_tablespace USERS:ROA,
  impdp quoted AS SYSDBA for Windows, AWR retention 8 days, datafile full path
- Updated roa-windows-setup docs with XE prevention steps and gotchas table

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Agent
2026-03-24 16:31:17 +00:00
parent 36c6405c21
commit 6410339196
18 changed files with 2699 additions and 1 deletions

View File

@@ -396,10 +396,32 @@ ALTER PLUGGABLE DATABASE XEPDB1 SAVE STATE;
impdp ... REMAP_TABLESPACE=ROA:USERS
```
**ORA-00959: tablespace 'USERS' does not exist (pe PDB nou):**
```cmd
REM PDB-ul nou din PDB$SEED nu are tablespace USERS. Remapeaza la ROA:
impdp "sys/pass@XEPDB1 AS SYSDBA" ... remap_tablespace=USERS:ROA
```
**ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version newer:**
Use DMP files exported from Oracle 18c (TSTZ 31) instead of Oracle 21c (TSTZ 35).
### ORA-12954: Database exceeds 12 GB (XE only)
See `clienti/oracle-xe-21c/depanare-ora-12954-spatiu.md` for full troubleshooting guide.
**Prevention (run on every new XE installation):**
```sql
-- Connect to XEPDB1 as SYS
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'sql tuning advisor', operation => NULL, window_name => NULL);
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto space advisor', operation => NULL, window_name => NULL);
NOAUDIT POLICY ORA_SECURECONFIG;
NOAUDIT POLICY ORA_LOGON_FAILURES;
EXEC DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(retention => 8*24*60, interval => 60);
EXEC DBMS_STATS.ALTER_STATS_HISTORY_RETENTION(7);
GRANT EXECUTE ON SYS.DBMS_LOCK TO CONTAFIN_ORACLE;
```
### Service Not Starting
Check Windows Services:

View File

@@ -276,6 +276,55 @@ Or via Control Panel > Programs and Features.
---
## Post-Installation: Preventie ORA-12954 (OBLIGATORIU!)
Oracle XE are limita de 12 GB. Fara aceste setari, SYSAUX creste automat pana la limita (SQL Tuning Sets, audit trail).
**Conecteaza-te la PDB-ul XEPDB1 ca SYS si ruleaza:**
```sql
sqlplus sys/romfastsoft@localhost:1521/XEPDB1 as sysdba
-- 1. Dezactiveaza auto tasks care umfla SYSAUX
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'sql tuning advisor', operation => NULL, window_name => NULL);
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto space advisor', operation => NULL, window_name => NULL);
-- 2. Dezactiveaza audit policies (umfla AUDSYS)
NOAUDIT POLICY ORA_SECURECONFIG;
NOAUDIT POLICY ORA_LOGON_FAILURES;
-- 3. AWR retention minim (8 zile - limita moving window baseline)
EXEC DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(retention => 8*24*60, interval => 60);
EXEC DBMS_STATS.ALTER_STATS_HISTORY_RETENTION(7);
-- 4. Grant DBMS_LOCK (necesar pentru PACK_UTILS_FILE)
GRANT EXECUTE ON SYS.DBMS_LOCK TO CONTAFIN_ORACLE;
-- 5. Verificare
SELECT client_name, status FROM dba_autotask_client;
SELECT policy_name, enabled_option FROM audit_unified_enabled_policies;
```
> **IMPORTANT:** Fara acesti pasi, baza de date va atinge limita de 12 GB in cateva luni!
> Vezi `clienti/oracle-xe-21c/depanare-ora-12954-spatiu.md` pentru ghid complet de depanare.
---
## Gotchas Oracle XE 21c (Windows)
| Problema | Solutie |
|----------|---------|
| `ORA-02236: invalid file name` la CREATE TABLESPACE | Specifica path complet: `DATAFILE 'C:\...\ROA01.DBF'` |
| `ORA-00959: tablespace 'USERS' does not exist` la impdp | Adauga `remap_tablespace=USERS:ROA` |
| `ORA-00942` la GRANT pe DIRECTORY | Foloseste `GRANT READ, WRITE ON DIRECTORY dir_name` nu `ON SYS.dir_name` |
| `PLS-00201: DBMS_LOCK must be declared` | `GRANT EXECUTE ON SYS.DBMS_LOCK TO CONTAFIN_ORACLE` |
| `ORA-65066` la ALTER USER SYSTEM pe PDB | SYSTEM e common user, modifica din CDB$ROOT |
| `ORA-28000: account is locked` la impdp cu SYSTEM | Foloseste SYS AS SYSDBA: `impdp "sys/pass@XEPDB1 AS SYSDBA"` |
| impdp `AS SYSDBA` nu functioneaza pe Windows | Pune in ghilimele: `impdp "sys/pass@XEPDB1 AS SYSDBA"` |
| `ORA-13541` la AWR retention | Retention trebuie >= 8 zile (moving window baseline) |
---
## Next Steps
After Oracle XE installation:
@@ -283,10 +332,11 @@ After Oracle XE installation:
1. Copy `config.example.ps1` to `config.ps1`
2. Edit `config.ps1` with your settings
3. Run `01-setup-database.ps1`
4. **Run the post-installation prevention steps above!**
See main `README.md` for complete workflow.
---
**Last Updated:** 2026-01-28
**Last Updated:** 2026-03-24
**Project:** ROMFASTSQL - Oracle XE Installation Guide