Cette rubrique explique comment créer un compte standard pour un locataire compatible Oracle au sein d'une instance de cluster OceanBase, puis accorder à ce compte les privilèges minimaux requis lors des différentes phases de migration des données.
Contexte
Une instance de cluster OceanBase en mode compatible Oracle prend en charge deux types de comptes de base de données : le compte standard et le compte superutilisateur. Lorsque vous utilisez le service de transmission de données pour migrer des données depuis une instance de cluster OceanBase, respectez les règles suivantes :
Si vous utilisez un compte standard, accordez-lui des privilèges conformément aux descriptions fournies dans cette rubrique.
Si vous utilisez un compte superutilisateur, celui-ci dispose par défaut des privilèges en lecture et en écriture sur toutes les bases de données.
Dans cet exemple, nous créons un compte standard pour une instance de cluster OceanBase. Indiquez ce compte dans le champ Username lorsque vous créez une source de données OceanBase.

Si vous souhaitez migrer une table dépourvue de clé unique, vous devez également créer un utilisateur __OCEANBASE_INNER_DRC_USER disposant du privilège en lecture seule avant la migration des données. Ensuite, lors de la création de la source de données OceanBase, spécifiez le mot de passe de l'utilisateur __OCEANBASE_INNER_DRC_USER.

Créer un compte standard pour une instance de cluster
-
Accédez à la page Cluster Instance Workspace.
-
Connectez-vous à la console ApsaraDB for OceanBase
.
Dans le coin supérieur gauche, sélectionnez la région où se trouve l'instance cible.
Dans le volet de navigation de gauche, cliquez sur Instances puis sur le nom de l'instance cible.
-
-
Accédez à la page Accounts.
Sur la page Cluster Instance Workspace, cliquez sur Tenant Management dans le volet de navigation de gauche.
-
Sur la page Tenants, cliquez sur le nom du locataire cible dont le Tenant Mode est défini sur Oracle.

Sur la page Tenant Workspace, cliquez sur Account Management dans le volet de navigation de gauche.
-
Sur la page Account Management, cliquez sur Create Account dans le coin supérieur droit.

-
Dans la boîte de dialogue Create Account, configurez les paramètres.

Parameter
Description
Username
Le nom du compte peut contenir des lettres, des chiffres et des traits de soulignement (_). Il doit commencer par une lettre et se terminer par une lettre ou un chiffre. Sa longueur ne doit pas dépasser 32 caractères.
Account Type
Sélectionnez Normal Account. Vous pourrez ensuite accorder des privilèges sur les bases de données à ce compte. Pour plus d'informations sur les privilèges, consultez la section Privilèges des comptes en mode Oracle.
Password
Le mot de passe doit comporter entre 10 et 32 caractères et inclure au moins trois des quatre types de caractères suivants : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux. Les caractères spéciaux pris en charge sont : ! @ # $ % ^ & * ( ) _ + - =. Cliquez sur Randomly generated pour générer automatiquement un mot de passe aléatoire.
RemarqueCliquez également sur Copy Password pour copier le mot de passe et le conserver en toute sécurité.
Remarks (Optional)
Saisissez une description pour le compte.
Cliquez sur OK.
Gérer les objets accessibles
Cette section explique comment accorder des privilèges sur des tables à un compte standard dans une instance de cluster. Attribuez ces privilèges en suivant les descriptions ci-dessous.
Accédez à la page Account Management d'un locataire compatible Oracle de la base de données OceanBase.
-
Cliquez sur Manage Access Objects à côté du compte standard cible.

-
Sur la page Manage Access Objects, cliquez sur Add Object dans le coin supérieur droit.

-
Dans la boîte de dialogue Add Object, configurez les paramètres.

Parameter
Description
Méthode d'ajout
Sélectionnez Specify Objects ou Import Objects.
Sélection des objets
Si vous sélectionnez Specify Objects, choisissez les objets de table cibles dans la liste Source Object située à gauche, puis cliquez sur > pour les ajouter à la liste de droite.
Si vous sélectionnez Import Objects, collez les objets de table cibles au format
nom_utilisateur/nom_objetdans la zone de texte, en séparant les différents objets par des virgules (,).
Attribution des privilèges
Accordez le privilège Read-only ou Read/Write selon vos besoins.
Cliquez sur OK.
Accorder des privilèges à un compte standard dans une instance de cluster source
Le tableau suivant répertorie les privilèges minimaux requis pour un compte standard dans une instance de cluster OceanBase source (mode compatible Oracle) lors des différentes phases de migration des données.
Type de table | Migration du schéma | Migration complète | Synchronisation incrémentielle | Vérification complète | Incrémentation inverse |
Table avec une clé primaire ou une clé unique non nulle | Lecture seule | Lecture seule | Lecture seule | Lecture seule | Lecture/Écriture |
Table sans clé primaire ni clé unique non nulle | Lecture seule |
| Lecture seule | Utilisateur __OCEANBASE_INNER_DRC_USER requis | Lecture/Écriture |
Accorder des privilèges à un compte standard dans une instance de cluster cible
Le tableau suivant répertorie les privilèges minimaux requis pour un compte standard dans une instance de cluster OceanBase cible (mode compatible Oracle) lors des différentes phases de migration des données.
|**Type de table**
|
**Migration du schéma**
|
**Migration complète**
|
**Synchronisation incrémentielle**
|
**Vérification complète**
|
**Incrémentation inverse**
| | --- | --- | --- | --- | --- | --- | |
Table avec une clé primaire ou une clé unique non nulle
|
Lecture/Écriture
|
Lecture/Écriture
|
Lecture/Écriture
|
Lecture seule
|
Lecture seule
| |
Table sans clé primaire ni clé unique non nulle
|
Lecture/Écriture
|
Lecture/Écriture
|
Lecture/Écriture
|
Non pris en charge
|
Lecture seule
|
Créer l'utilisateur __OCEANBASE_INNER_DRC_USER et lui accorder des privilèges
Connectez-vous à la console ApsaraDB for OceanBase et accédez à la page Tenant Workspace.
-
Sur la page Tenant Workspace, cliquez sur Log on to Database dans le coin supérieur droit.

Dans la boîte de dialogue Enter a database account, saisissez le nom de la base de données à laquelle vous souhaitez vous connecter ou sélectionnez-la dans la liste déroulante, puis cliquez sur OK.
Dans la boîte de dialogue Enter the connection password, saisissez le mot de passe de connexion à la base de données et cliquez sur OK.
-
Une fois connecté, exécutez la commande suivante pour créer l'utilisateur
__OCEANBASE_INNER_DRC_USER:CREATE USER '__OCEANBASE_INNER_DRC_USER' IDENTIFIED BY <YOUR_PASSWORD>>; -
Exécutez la commande suivante pour accorder des privilèges à l'utilisateur :
GRANT CREATE SESSION TO '__OCEANBASE_INNER_DRC_USER'; GRANT SELECT ANY DICTIONARY TO '__OCEANBASE_INNER_DRC_USER';Accordez le privilège
SELECTsur les tables de la base de données à migrer de l'une des deux manières suivantes :// Grant system privileges. GRANT SELECT ANY TABLE TO '__OCEANBASE_INNER_DRC_USER'; // Grant privileges on specific database table objects. GRANT SELECT ON <schema>.<table> TO '__OCEANBASE_INNER_DRC_USER';