Configurazione di un'istanza database per Amazon RDS Custom per Oracle - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione di un'istanza database per Amazon RDS Custom per Oracle

Puoi creare un'istanza database RDS Custom e quindi connetterti ad essa utilizzando Secure Shell (SSH) o AWS Systems Manager.

Considerazioni sull'architettura multilocazione

Se crei un'istanza database Amazon RDS Custom for Oracle con l'architettura Oracle multitenant (custom-oracle-ee-cdbo tipo di custom-oracle-se2-cdb motore), il database è un database container (CDB). Se non specifichi l'architettura multitenant Oracle, il tuo database è un database tradizionale non CDB che utilizza il tipo di motore or. custom-oracle-ee custom-oracle-se2 Un non CDB non può contenere database collegabili (PDB). Per ulteriori informazioni, consulta Architettura dei database per Amazon RDS Custom per Oracle.

Quando crei un'istanza CDB RDS Custom per Oracle, considera quanto segue:

  • Puoi creare un database multilocazione solo da una CEV Oracle Database 19c.

  • È possibile creare un'istanza CDB solo se il CEV utilizza il tipo di motore o. custom-oracle-ee-cdb custom-oracle-se2-cdb

  • Se crei un'istanza CDB utilizzando Standard Edition 2, il CDB può contenere un massimo di 3 PDB.

  • Per impostazione predefinita, il CDB viene denominato RDSCDB, che è anche l'ID di sistema Oracle (Oracle SID). È possibile scegliere un nome diverso.

  • Il tuo CDB contiene solo un PDB iniziale. Il nome predefinito del PDB è ORCL. Puoi scegliere un nome diverso per il PDB iniziale, ma il SID Oracle e il nome PDB non possono essere uguali.

  • RDS Custom per Oracle non fornisce API per PDB. Per creare PDB aggiuntivi, utilizza il comando Oracle SQL CREATE PLUGGABLE DATABASE. RDS Custom per Oracle non limita il numero di PDB che è possibile creare. In generale, sei responsabile della creazione e della gestione dei PDB, come in una implementazione on-premise.

  • Non puoi utilizzare le API RDS per creare, modificare ed eliminare i PDB, usa invece le istruzioni SQL Oracle. Quando crei un PDB utilizzando Oracle SQL, ti consigliamo di scattare successivamente un'istantanea manuale nel caso in cui sia necessario eseguire il ripristino (PITR). point-in-time

  • Non puoi rinominare i PDB esistenti utilizzando le API Amazon RDS. Inoltre, non è possibile rinominare il CDB utilizzando il comando modify-db-instance.

  • La modalità aperta per la root CDB è READ WRITE sul database primario e MOUNTED su un database di standby montato. RDS Custom per Oracle tenta di aprire tutti i PDB all'apertura del CDB. Se RDS Custom per Oracle non è in grado di aprire tutti i PDB, genera l'evento tenant database shutdown.

Creazione di un'istanza database RDS Custom per Oracle

Crea un'istanza Amazon RDS Custom for Oracle DB utilizzando AWS Management Console o. AWS CLI La procedura è simile alla procedura per la creazione di un'istanza database Amazon RDS. Per ulteriori informazioni, consulta Creazione di un'istanza database Amazon RDS.

Se hai incluso i parametri di installazione nel manifesto CEV, l'istanza database utilizza la base Oracle, la home Oracle e l'ID e il nome dell'utente e del gruppo UNIX/Linux specificati. Il file oratab, creato da Oracle Database durante l'installazione, punta alla posizione di installazione reale anziché a un collegamento simbolico. RDS Custom per Oracle esegue i comandi come utente del sistema operativo configurato anziché come utente predefinito rdsdb. Per ulteriori informazioni, consulta Fase 5: preparazione del manifesto CEV.

Completa le attività presenti in Configurazione dell'ambiente per Amazon RDS Custom per Oracle prima di poter creare o connettere a un'istanza database RDS Custom.

Per creare un'istanza database RDS Custom per Oracle
  1. Accedi AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegliere Databases (Database).

  3. Scegliere Create database (Crea database).

  4. In Choose a database creation method (Seleziona metodo di creazione del database), scegli Standard create (Creazione standard).

  5. Nella sezione Opzioni motore, procedi nel modo seguente:

    1. Per Engine type (Tipo di motore), seleziona Oracle.

    2. Per il tipo di gestione del database, selezionare Amazon RDS Custom.

    3. In Impostazioni dell'architettura, effettua una delle seguenti operazioni:

      • Seleziona Architettura multi-tenant per creare un database container (CDB). Al momento della creazione, il CDB contiene un seed PDB e un PDB iniziale.

        Nota

        L'architettura multilocazione è supportata solo in Oracle Database 19c.

      • Deseleziona Architettura multi-tenant per creare un database non di tipo container. Un database non di tipo container non può contenere database collegabili (PDB).

    4. Per Edition, scegli Oracle Enterprise Edition o Oracle Standard Edition 2.

    5. In Versioni del motore personalizzato, scegli una versione del motore personalizzato (CEV) RDS Custom esistente. Una CEV ha il formato seguente: major-engine-version.customized_string. Un identificatore di esempio è 19.cdb_cev1.

      Se hai scelto l'architettura Multitenant nel passaggio precedente, puoi specificare solo un CEV che utilizza il custom-oracle-ee-cdb tipo di motore o. custom-oracle-se2-cdb La console filtra i CEV creati con diversi tipi di motore.

  6. Per Templates (Modelli), scegli Production (Produzione).

  7. Nella sezione Rule settings (Impostazioni regole), procedi nel seguente modo:

    1. In Identificatore di istanza database, immetti un nome univoco per l'istanza database.

    2. In Nome utente master, immetti un nome utente. È possibile recuperare questo valore dalla console in un secondo momento.

      Quando ti connetti a un non CDB, l'utente master è l'utente del non CDB. Quando ti connetti a un CDB, l'utente master è l'utente del PDB. Per connetterti alla root CDB, accedi all'host, avvia un client SQL e crea un utente amministrativo con i comandi SQL.

    3. Deseleziona Genera automaticamente una password.

  8. Scegli una classe in Classe di istanza database.

    Per le classi supportate, consultare Supporto delle classi di istanza database per RDS Custom per Oracle.

  9. Nella sezione Storage (Archiviazione), procedi come segue:

    1. In Tipo di storage, scegli un tipo di SSD: io1, gp2 o gp3. Sono disponibili le seguenti opzioni aggiuntive:

      • Per io1 o gp3, scegli una tariffa in Capacità di IOPS allocata. L'impostazione predefinita è 1000 per io1 e 12000 per gp3.

      • Per gp3, scegli una tariffa in Throughput di storage. L'impostazione predefinita è 500. MiBps

    2. In Storage allocato, scegli una dimensione di archiviazione. L'impostazione predefinita è 40 GiB.

  10. In Connettività, specifica un valore nei campi Cloud privato virtuale (VPC), Gruppi di sottoreti DB e Gruppo di sicurezza VPC (firewall).

  11. Per la sicurezza RDS Custom, procedere come segue:

    1. Per il profilo dell'istanza IAM, selezionare il profilo dell'istanza per l'istanza database RDS Custom per Oracle.

      Il profilo dell'istanza IAM deve iniziare conAWSRDSCustom, ad esempio AWSRDSCustomInstanceProfileForRdsCustomInstance.

    2. Per Crittografia, scegli Inserisci una chiave ARN per elencare le chiavi disponibili AWS KMS . Scegliere quindi la propria chiave dall'elenco.

      È richiesta una AWS KMS chiave per RDS Custom. Per ulteriori informazioni, consulta Fase 1: creazione o riutilizzo di una chiave AWS KMS di crittografia simmetrica.

  12. In Opzioni database, esegui le operazioni indicate di seguito:

    1. (Facoltativo) In ID sistema ID (SID), inserisci un valore per il SID Oracle, che è anche il nome del tuo CDB. Il valore del campo ID sistema ID (SID) è il nome dell'istanza database Oracle che gestisce i file del database. In questo contesto, il termine "istanza database Oracle" si riferisce esclusivamente all'area globale del sistema (SGA) e ai processi in background di Oracle. Se non specifichi un valore, il valore predefinito è RDSCDB.

    2. (Facoltativo) In Nome database iniziale, immetti un nome. Il valore predefinito è ORCL. Nell'architettura multi-tenant, il nome del database iniziale è il nome del PDB.

      Nota

      Il SID e il nome PDB devono essere diversi.

    3. Per Gruppo di opzioni, scegliete un gruppo di opzioni o accettate quello predefinito.

      Nota

      L'unica opzione supportata per RDS Custom for Oracle èTimezone. Per ulteriori informazioni, consulta Fuso orario Oracle.

    4. In Periodo di conservazione dei backup, scegli un valore. Non puoi scegliere 0 giorni.

    5. Per le restanti sezioni, specifica le impostazioni dell'istanza database RDS Custom preferite. Per informazioni su ciascuna impostazione, consulta Impostazioni per istanze database. Le impostazioni seguenti non appaiono nella console e non sono supportate:

      • Caratteristiche processore

      • Storage autoscaling (Auto Scaling dello storage)

      • Opzione Password and Kerberos authentication (Password e autenticazione Kerberos) in Database authentication (Autenticazione del database) (solo Autenticazione password è supportata)

      • Approfondimenti sulle prestazioni

      • Log exports (Esportazioni log)

      • Abilita aggiornamento automatico della versione secondaria

      • Deletion protection (Protezione da eliminazione)

  13. Scegliere Crea database.

    Importante

    Quando crei un'istanza database RDS Custom per Oracle, potresti ricevere il seguente errore: Il ruolo collegato ai servizi è nel processo di creazione. Riprova più tardi. In questo caso, attendere alcuni minuti e riprovare a creare l'istanza database.

    Il pulsante View credential details (Vedi dettagli delle credenziali) viene visualizzato sulla pagina Database.

    Per vedere nome utente e password per l'istanza database RDS Custom, seleziona View credential details (Vedi dettagli delle credenziali).

    Per connetterti all'istanza database come utente principale, utilizza il nome utente e la password visualizzati.

    Importante

    Non è possibile visualizzare di nuovo la password dell'utente master nella console. Se non la registri, potresti doverla modificare. Per modificare la password dell'utente master dopo che l'istanza database RDS Custom è disponibile, accedi al database ed esegui un comando ALTER USER. Puoi ripristinare la password utilizzando l'opzione Modifica nella console.

  14. Scegliere Database per visualizzare l'elenco delle istanze database RDS Custom.

  15. Scegliere l'istanza database RDS Custom appena creata.

    Nella console RDS vengono visualizzati i dettagli per la nuova istanza database RDS Custom:

    • L'istanza database RDS Custom rimane nello stato creating (creazione in corso) fino a quando non è stata creata e non è pronta per l'uso. Quando lo stato cambia in available (disponibile) è possibile connettersi all'istanza database. A seconda della classe di istanza e dello storage allocato, potrebbero trascorrere diversi minuti prima che la nuova istanza database sia disponibile.

    • Ruolo ha il valore Istanza (RDS Custom).

    • Modalità di automazione RDS Custom ha il valore Automazione completa. Questa impostazione indica che l'istanza database fornisce il monitoraggio automatico e il ripristino dell'istanza.

È possibile creare un'istanza DB personalizzata RDS utilizzando il create-db-instance AWS CLI comando.

Sono richieste le seguenti opzioni:

  • --db-instance-identifier

  • --db-instance-class (per l'elenco delle classi di istanza supportate, vedere Supporto delle classi di istanza database per RDS Custom per Oracle)

  • --engine engine-type, dove il tipo di motore ècustom-oracle-ee,, o custom-oracle-se2 custom-oracle-ee-cdb custom-oracle-se2-cdb

  • --engine-version cev (dove cev è il nome della versione del motore personalizzata specificata in Creazione di un CEV)

  • --kms-key-id my-kms-key

  • --backup-retention-period days (dove days è un valore maggiore di 0)

  • --no-auto-minor-version-upgrade

  • --custom-iam-instance-profile AWSRDSCustomInstanceProfile-us-east-1 (dove region è la Regione AWS in cui stai creando l'istanza DB)

Nell'esempio seguente viene creata un'istanza database RDS Custom per denominata my-cfo-cdb-instance. Il database è un CDB con il nome non predefinito MYCDB. Il nome non predefinito del PDB è MYPDB. Il periodo di retention dei backup è di tre giorni.

PerLinux, o: macOS Unix

aws rds create-db-instance \ --engine custom-oracle-ee-cdb \ --db-instance-identifier my-cfo-cdb-instance \ --engine-version 19.cdb_cev1 \ --db-name MYPDB \ --db-system-id MYCDB \ --allocated-storage 250 \ --db-instance-class db.m5.xlarge \ --db-subnet-group mydbsubnetgroup \ --master-username myuser \ --master-user-password mypassword \ --backup-retention-period 3 \ --port 8200 \ --kms-key-id my-kms-key \ --no-auto-minor-version-upgrade \ --custom-iam-instance-profile AWSRDSCustomInstanceProfile-us-east-1

Per Windows:

aws rds create-db-instance ^ --engine custom-oracle-ee-cdb ^ --db-instance-identifier my-cfo-cdb-instance ^ --engine-version 19.cdb_cev1 ^ --db-name MYPDB ^ --db-system-id MYCDB ^ --allocated-storage 250 ^ --db-instance-class db.m5.xlarge ^ --db-subnet-group mydbsubnetgroup ^ --master-username myuser ^ --master-user-password mypassword ^ --backup-retention-period 3 ^ --port 8200 ^ --kms-key-id my-kms-key ^ --no-auto-minor-version-upgrade ^ --custom-iam-instance-profile AWSRDSCustomInstanceProfile-us-east-1
Nota

Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

Ottenere informazioni sull'istanza tramite il comando describe-db-instances.

aws rds describe-db-instances --db-instance-identifier my-cfo-cdb-instance

Il seguente output parziale mostra il motore, i gruppi di parametri e altre informazioni.

{ "DBInstanceIdentifier": "my-cfo-cdb-instance", "DBInstanceClass": "db.m5.xlarge", "Engine": "custom-oracle-ee-cdb", "DBInstanceStatus": "available", "MasterUsername": "admin", "DBName": "MYPDB", "DBSystemID": "MYCDB", "Endpoint": { "Address": "my-cfo-cdb-instance.abcdefghijkl.us-east-1.rds.amazonaws.com", "Port": 1521, "HostedZoneId": "A1B2CDEFGH34IJ" }, "AllocatedStorage": 100, "InstanceCreateTime": "2023-04-12T18:52:16.353000+00:00", "PreferredBackupWindow": "08:46-09:16", "BackupRetentionPeriod": 7, "DBSecurityGroups": [], "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-0a1bcd2e", "Status": "active" } ], "DBParameterGroups": [ { "DBParameterGroupName": "default.custom-oracle-ee-cdb-19", "ParameterApplyStatus": "in-sync" } ], ...

Ruolo collegato ai servizi RDS Custom

Un ruolo collegato al servizio offre ad Amazon RDS Custom l'accesso alle risorse del tuo. Account AWS Ciò rende più semplice l’utilizzo di RDS Custom perché non si devono aggiungere manualmente le autorizzazioni necessarie. RDS Custom definisce le autorizzazioni dei ruoli associato ai servizi e, salvo diversamente definito, solo RDS Custom può assumere tali ruoli. Le autorizzazioni definite includono la policy di attendibilità e la policy delle autorizzazioni che non può essere collegata a nessun'altra entità IAM.

Quando crei un'istanza DB personalizzata RDS, vengono creati e utilizzati sia i ruoli collegati ai servizi (se non già esistenti) Amazon RDS che RDS Custom. Per ulteriori informazioni, consulta Utilizzo di ruoli collegati ai servizi per Amazon RDS.

La prima volta che crei un'istanza database RDS Custom per Oracle, potresti ricevere il seguente errore: Il ruolo collegato ai servizi è nel processo di creazione. Riprova più tardi. In questo caso, attendere alcuni minuti e riprovare a creare l'istanza database.

Connessione all'istanza database RDS Custom utilizzando Session Manager

Dopo aver creato l'istanza DB personalizzata RDS, puoi connetterti ad essa utilizzando. AWS Systems Manager Session Manager Questa è la tecnica preferita quando l'istanza database non è accessibile pubblicamente.

Session Manager consente di accedere alle istanze Amazon EC2 tramite una shell (interprete di comandi) basata su browser o tramite la AWS CLI. Per ulteriori informazioni, consulta AWS Systems Manager Session Manager.

Per connettersi all'istanza database utilizzando Session Manager
  1. Accedi AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegliere Databases (Database) e quindi scegliere l'istanza database RDS Custom a cui desideri connetterti.

  3. Scegliere Configuration (Configurazione).

  4. Annota Resource ID (Risorsa ID)per l'istanza database. Ad esempio, l'ID risorsa potrebbe essere db-ABCDEFGHIJKLMNOPQRS0123456.

  5. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  6. Nel riquadro di navigazione, seleziona Istanze.

  7. Cerca il nome dell'istanza EC2, quindi fai clic sull'ID istanza associato con esso. Ad esempio, l'istanza ID potrebbe essere i-abcdefghijklm01234.

  8. Scegli Connetti.

  9. Scegli Session Manager.

  10. Scegli Connetti.

    Si apre una finestra per la sessione.

Puoi connettere l'istanza database RDS Custom tramite AWS CLI. Questa tecnica richiede il plugin Session Manager per AWS CLI. Per informazioni su come installare il plugin, consultare Installare il plugin di Session Manager per AWS CLI.

Per trovare l'ID della risorsa DB dell'istanza database RDS Custom, utilizzare aws rds describe-db-instances.

aws rds describe-db-instances \ --query 'DBInstances[*].[DBInstanceIdentifier,DbiResourceId]' \ --output text

Il seguente output di esempio mostra l'ID della risorsa per l'istanza RDS Custom. Il prefisso è db-.

db-ABCDEFGHIJKLMNOPQRS0123456

Per trovare l'ID dell'istanza EC2 della tua istanza database, utilizzare aws ec2 describe-instances. Nell'esempio seguente viene utilizzato db-ABCDEFGHIJKLMNOPQRS0123456 per l'ID risorsa.

aws ec2 describe-instances \ --filters "Name=tag:Name,Values=db-ABCDEFGHIJKLMNOPQRS0123456" \ --output text \ --query 'Reservations[*].Instances[*].InstanceId'

L'output di esempio seguente mostra l'ID dell'istanza EC2.

i-abcdefghijklm01234

Utilizzo del comando aws ssm start-session, che fornisce l'ID istanza EC2 nel parametro --target.

aws ssm start-session --target "i-abcdefghijklm01234"

Se l'operazione riesce, la connessione sarà simile al seguente.

Starting session with SessionId: yourid-abcdefghijklm1234 [ssm-user@ip-123-45-67-89 bin]$

Connessione all'istanza database RDS Custom tramite SSH

Secure Shell Protocol (SSH) è un protocollo di rete che supporta la comunicazione crittografata su una rete non protetta. Dopo aver creato l'istanza database RDS Custom, è possibile connettersi utilizzando un client SSH. Per ulteriori informazioni, consultare Connessione all'istanza Linux tramite SSH.

La connessione SSH dipende dal fatto che l'istanza DB è privata, ovvero l'istanza non accetta connessioni dalla rete Internet pubblica. In questo caso, è necessario utilizzare il tunneling SSH per connettere l'utilità ssh alla propria istanza. Questa tecnica trasporta i dati con un flusso di dati dedicato (tunnel) all'interno di una sessione SSH esistente. È possibile configurare il tunneling SSH utilizzando AWS Systems Manager.

Nota

Sono supportate varie strategie per accedere alle istanze private. Per scoprire come connettere un client ssh a istanze private utilizzando gli host bastione, consulta Host bastione Linux su AWS. Per informazioni su come configurare la funzionalità di inoltro alla porta, consulta l'argomento relativo all'inoltro alla porta tramite AWS Systems Manager Session Manager.

Se l'istanza DB si trova in una sottorete pubblica e per tale istanza è stata abilitata l'opzione Disponibile pubblicamente, non è richiesto il tunneling SSH. Puoi connetterti tramite SSH con la stessa procedura usata per un'istanza Amazon EC2 pubblica.

Per connettere un client SSH all'istanza database, completa la procedura riportata di seguito:

Fase 1: configurazione dell'istanza database per consentire connessioni SSH

Per assicurarti che l'istanza database accetti connessioni SSH, procedi nel modo seguente:

  • Assicurati che il gruppo di sicurezza dell'istanza database consenta le connessioni in entrata sulla porta 22 per TCP.

    Per informazioni su come configurare il gruppo di sicurezza per l'istanza DB, consulta Controllo dell'accesso con i gruppi di sicurezza.

  • Se non prevedi di utilizzare il tunneling SSH, assicurati che l'istanza DB risieda in una sottorete pubblica e che sia accessibile al pubblico.

    Nella console, il campo pertinente è Disponibile pubblicamente nella scheda Connettività e sicurezza della pagina dei dettagli del database. Per controllare le impostazioni nella CLI, esegui il comando riportato di seguito:

    aws rds describe-db-instances \ --query 'DBInstances[*].{DBInstanceIdentifier:DBInstanceIdentifier,PubliclyAccessible:PubliclyAccessible}' \ --output table

    Per modificare le impostazioni di accessibilità per l'istanza database, consulta Modifica di un'istanza database Amazon RDS.

Fase 2: recupero della chiave segreta SSH e l'ID dell'istanza EC2

Per connettersi all'istanza database tramite SSH, è necessario disporre della coppia di chiavi SSH associata all'istanza. RDS Custom crea la coppia di chiavi SSH per conto dell'utente, denominandola con il prefisso. do-not-delete-rds-custom-ssh-privatekey-db- AWS Secrets Manager memorizza la tua chiave privata SSH come segreta.

Recupera la tua chiave segreta SSH utilizzando uno o AWS Management Console il. AWS CLI Se l'istanza ha un DNS pubblico e non intendi utilizzare il tunneling SSH, recupera anche il nome DNS. Specifica il nome DNS delle connessioni pubbliche.

Per recuperare la chiave SSH segreta
  1. Accedi AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegliere Databases (Database) e quindi scegliere l'istanza database RDS Custom a cui desideri connetterti.

  3. Scegliere Configuration (Configurazione).

  4. Annota il valore Resource ID (Risorsa ID). Ad esempio, l'ID risorsa dell'istanza DB potrebbe essere db-ABCDEFGHIJKLMNOPQRS0123456.

  5. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  6. Nel riquadro di navigazione, seleziona Istanze.

  7. Trova il nome dell'istanza EC2 e scegli l'ID istanza associato con esso. Ad esempio, l'ID istanza EC2 potrebbe essere i-abcdefghijklm01234.

  8. In Details (Dettagli), trovare Key pair name (Nome della coppia di chiavi). Il nome della coppia include l'ID risorsa dell'istanza DB. Ad esempio, il nome della coppia potrebbe essere do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.

  9. Se l'istanza EC2 è pubblica, prendi nota del DNS IPv4 pubblico. Ad esempio, l'indirizzo del Domain Name System (DNS) pubblico potrebbe essere ec2-12-345-678-901.us-east-2.compute.amazonaws.com.

  10. Apri la AWS Secrets Manager console all'indirizzo https://console.aws.amazon.com/secretsmanager/.

  11. Scegliere il segreto che ha lo stesso nome della tua coppia di chiavi.

  12. Scegli Retrieve secret value (Recupera il valore del segreto).

  13. Copia la chiave SSH privata in un file di testo e salva il file con l'estensione .pem. Ad esempio, salva il file come /tmp/do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem.

Per recuperare la chiave SSH privata e salvarla in un file .pem, puoi usare la AWS CLI.

  1. Cerca l'ID risorsa dell'istanza database RDS Custom tramite aws rds describe-db-instances.

    aws rds describe-db-instances \ --query 'DBInstances[*].[DBInstanceIdentifier,DbiResourceId]' \ --output text

    Il seguente output di esempio mostra l'ID della risorsa per l'istanza RDS Custom. Il prefisso è db-.

    db-ABCDEFGHIJKLMNOPQRS0123456
  2. Cerca l'ID dell'istanza EC2 dell'istanza database tramite aws ec2 describe-instances. Nell'esempio seguente viene utilizzato db-ABCDEFGHIJKLMNOPQRS0123456 per l'ID risorsa.

    aws ec2 describe-instances \ --filters "Name=tag:Name,Values=db-ABCDEFGHIJKLMNOPQRS0123456" \ --output text \ --query 'Reservations[*].Instances[*].InstanceId'

    L'output di esempio seguente mostra l'ID dell'istanza EC2.

    i-abcdefghijklm01234
  3. Per trovare il nome chiave, specifica l'ID istanza EC2. L'esempio seguente descrive l'istanza EC2 i-0bdc4219e66944afa.

    aws ec2 describe-instances \ --instance-ids i-0bdc4219e66944afa \ --output text \ --query 'Reservations[*].Instances[*].KeyName'

    Il seguente output di esempio mostra il nome della chiave, che utilizza il prefisso do-not-delete-rds-custom-ssh-privatekey-.

    do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c
  4. Salva la chiave privata in un file .pem avente lo stesso nome della chiave tramite aws secretsmanager. Nell'esempio seguente viene salvato il file nella tua directory /tmp.

    aws secretsmanager get-secret-value \ --secret-id do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c \ --query SecretString \ --output text >/tmp/do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem

Fase 3: connessione all'istanza EC2 utilizzando l'utility ssh

La tecnica di connessione dipende dalla connessione a un'istanza DB privata o a un'istanza pubblica. Una connessione privata richiede la configurazione del tunneling SSH tramite AWS Systems Manager.

Per connettersi all'istanza EC2 tramite l'utility ssh
  1. Per le connessioni private, modifica il file di configurazione SSH per i comandi proxy impostando AWS Systems Manager Session Manager. Per le connessioni pubbliche, esegui la fase 2.

    Aggiungi le righe seguenti a ~/.ssh/config. Queste righe eseguono i comandi SSH in modalità proxy per gli host i cui nomi iniziano con i- o mi-.

    Host i-* mi-* ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
  2. Passare alla directory che contiene il file .pem. Tramite chmod, imposta le autorizzazioni su 400.

    cd /tmp chmod 400 do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem
  3. Esegui l'utilità ssh, specificando il file. pem e il nome DNS pubblico (per le connessioni pubbliche) o l'ID dell'istanza EC2 (per le connessioni private). Accedi come utente ec2-user.

    L'esempio seguente stabilisce una connessione a un'istanza pubblica utilizzando il nome DNS ec2-12-345-678-901.us-east-2.compute.amazonaws.com.

    ssh -i \ "do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem" \ ec2-user@ec2-12-345-678-901.us-east-2.compute.amazonaws.com

    L'esempio seguente stabilisce una connessione a un'istanza privata utilizzando l'ID istanza EC2 i-0bdc4219e66944afa.

    ssh -i \ "do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem" \ ec2-user@i-0bdc4219e66944afa

Accesso al database RDS Custom per Oracle come SYS

Dopo aver creato l'istanza database RDS Custom, è possibile accedere al database Oracle come utente SYS, ruolo che dispone dei privilegi SYSDBA. Sono disponibili le seguenti opzioni di accesso:

  • Recupera la password SYS da Secrets Manager e specificala nel client SQL.

  • Usa l'autenticazione del sistema operativo per accedere al database. In questo caso, non è necessario inserire una password.

Individuazione della password SYS per il database RDS Custom per Oracle

È possibile accedere al database Oracle come SYS o SYSTEM o specificando il nome utente principale in una chiamata API. La password per SYS e SYSTEM è archiviata in Secrets Manager. Il segreto utilizza il formato di denominazione do-not-delete-rds -custom- resource_id - uuid. Puoi cercare la password usando la AWS Management Console.

Per cercare la password SYS per il tuo database in Secrets Manager
  1. Accedi AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Utilizzando la console RDS esegui i passaggi seguenti:

    1. Nel riquadro di navigazione, scegli Databases (Database).

    2. Scegli il nome dell'istanza database RDS Custom per Oracle.

    3. Scegliere Configuration (Configurazione).

    4. Copia il valore riportato sotto ID risorsa. Ad esempio, l'ID risorsa potrebbe essere db-ABC12cde3fgh4i5jKLMNO6PQR7.

  3. Apri la console di Secrets Manager all'indirizzo https://console.aws.amazon.com/secretsmanager/.

  4. Utilizzando la console Secrets Manager esegui i passaggi seguenti:

    1. Nel pannello di navigazione a sinistra, seleziona Segreti.

    2. Filtra i segreti in base all'ID risorsa copiato nel passaggio 5.

    3. Scegli il segreto denominato do-not-delete-rds-custom- resource_id - uuid, dove resource_id è l'ID della risorsa che hai copiato nel passaggio 5. Ad esempio, se l'ID della risorsa è db-ABC12CDE3FGH4i5JKLMNO6PQR7, il segreto sarà denominato do-not-delete-rds-Custom-DB-ABC12CDE3FGH4i5JKLMNO6PQR7.

    4. Nella sezione Valore segreto, scegli Recupera il valore di un segreto.

    5. In Chiave/valore, copia il valore del campo Password.

  5. Installa SQL*Plus sull'istanza DB e accedi al database come SYS. Per ulteriori informazioni, consulta Fase 3: connessione del client SQL a un'istanza database Oracle..

Accesso al database RDS Custom per Oracle utilizzando l'autenticazione del sistema operativo

L'utente del sistema operativo rdsdb possiede i file binari del database Oracle. È possibile passare all'utente rdsdb e accedere al database RDS Custom per Oracle senza password.

  1. Connect alla propria istanza DB con AWS Systems Manager. Per ulteriori informazioni, consulta Connessione all'istanza database RDS Custom utilizzando Session Manager.

  2. In un browser web, passa a https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html.

  3. Per la versione più recente del database visualizzata nella pagina web, copia i collegamenti .rpm (non i collegamenti .zip) per il pacchetto Instant Client Basic e il pacchetto SQL*Plus. Ad esempio, i seguenti link si riferiscono alla versione 21.9 di Oracle Database:

    • https://download.oracle.com/otn_software/linux/instantclient/219000/ oracle-instantclient-basic -21.9.0.0.0-1.el8.x86_64.rpm

    • https://download.oracle.com/otn_software/linux/instantclient/219000/ oracle-instantclient-sqlplus -21.9.0.0.0-1.el8.x86_64.rpm

  4. Nella sessione SSH, esegui il comando wget per scaricare i file .rpm dai collegamenti che hai ottenuto nel passaggio precedente. L'esempio seguente scarica i file .rpm per Oracle Database versione 21.9:

    wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-basic-21.9.0.0.0-1.el8.x86_64.rpm wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-sqlplus-21.9.0.0.0-1.el8.x86_64.rpm
  5. Installa i pacchetti eseguendo il comando yum come segue:

    sudo yum install oracle-instantclient-*.rpm
  6. Passa all'utente rdsdb.

    sudo su - rdsdb
  7. Accedi al database utilizzando l'autenticazione del sistema operativo.

    $ sqlplus / as sysdba SQL*Plus: Release 21.0.0.0.0 - Production on Wed Apr 12 20:11:08 2023 Version 21.9.0.0.0 Copyright (c) 1982, 2020, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.10.0.0.0

Installazione di componenti software aggiuntivi sull'istanza database RDS Custom per Oracle

In un'istanza database appena creata, l'ambiente del database include foòe binari Oracle, un database e un ascoltatore di database. Potresti voler installare software aggiuntivo sul sistema operativo host dell'istanza database. Ad esempio, potresti voler installare Oracle Application Express (APEX), l'agente Oracle Enterprise Manager (OEM) o l'agente Guardium S-TAP. Per linee guida e istruzioni di alto livello, consulta il post dettagliato del AWS blog Installa componenti software aggiuntivi su Amazon RDS Custom for Oracle.