Tâches courantes pour les tablespaces - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Tâches courantes pour les tablespaces

Vous pouvez créer, modifier, renommer ou supprimer des tablespaces pour une base de données RDS pour DB2. La création, la modification, le renommage ou la suppression de tablespaces nécessitent une SYSADM autorité de niveau supérieur, qui n'est pas accessible à l'utilisateur principal. Utilisez plutôt les procédures RDS stockées Amazon.

Création d'un tablespace

Pour créer un tablespace pour votre base de données RDS for DB2, appelez la rdsadmin.create_tablespace procédure stockée. Pour plus d’informations, consultez .CREATE TABLESPACE déclaration dans le IBM Db2 .

Important

Pour créer un espace disque logique, vous devez disposer d'un pool de mémoire tampon de même taille de page à associer au tablespace. Pour de plus amples informations, veuillez consulter Tâches courantes pour les pools de mémoire tampon.

Pour créer un tablespace
  1. Connectez-vous à la rdsadmin base de données à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance de base de données RDS pour DB2. Dans l'exemple suivant, remplacez master_username and master_password avec vos propres informations.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Créez un tablespace en appelant. rdsadmin.create_tablespace Pour de plus amples informations, veuillez consulter rdsadmin.create_tablespace.

    db2 "call rdsadmin.create_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_initial_size, tablespace_increase_size, 'tablespace_type')"

Modification d'un tablespace

Pour modifier un tablespace pour votre base de données RDS for DB2, appelez la rdsadmin.alter_tablespace procédure stockée. Vous pouvez utiliser cette procédure stockée pour modifier le pool de mémoire tampon d'un espace disque logique, abaisser le seuil maximal ou mettre un espace disque logique en ligne. Pour plus d’informations, consultez .ALTER TABLESPACE déclaration dans le IBM Db2 .

Pour modifier un tablespace
  1. Connectez-vous à la rdsadmin base de données à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance de base de données RDS pour DB2. Dans l'exemple suivant, remplacez master_username and master_password avec vos propres informations.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Modifiez un tablespace en appelant. rdsadmin.alter_tablespace Pour de plus amples informations, veuillez consulter rdsadmin.alter_tablespace.

    db2 "call rdsadmin.alter_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', buffer_pool_size, tablespace_increase_size, 'max_size', 'reduce_max', 'reduce_stop', 'reduce_value', 'lower_high_water', 'lower_high_water_stop', 'switch_online')"

Modification du nom d'un tablespace

Pour modifier le nom d'un tablespace pour votre base de données RDS for DB2, appelez la rdsadmin.rename_tablespace procédure stockée. Pour plus d’informations, consultez .RENAME TABLESPACE déclaration dans le IBM Db2 .

Pour renommer un tablespace
  1. Connectez-vous à la rdsadmin base de données à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance de base de données RDS pour DB2. Dans l'exemple suivant, remplacez master_username and master_password avec vos propres informations.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Renommez un tablespace en appelant. rdsadmin.rename_tablespace Pour plus d'informations, notamment les restrictions relatives au nom que vous pouvez donner à un espace disque logique, consultez. rdsadmin.rename_tablespace

    db2 "call rdsadmin.rename_tablespace( 'database_name', 'source_tablespace_name', 'target_tablespace_name')"

Supprimer un tablespace

Pour supprimer un tablespace pour votre base de données RDS for DB2, appelez la rdsadmin.drop_tablespace procédure stockée. Avant de supprimer un espace disque logique, supprimez d'abord tous les objets qu'il contient, tels que des tables, des index ou des objets de grande taille (). LOBs Pour plus d'informations, voir Supprimer les espaces de table dans IBM Db2 .

Pour supprimer un tablespace
  1. Connectez-vous à la rdsadmin base de données à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance de base de données RDS pour DB2. Dans l'exemple suivant, remplacez master_username and master_password avec vos propres informations.

    db2 "connect to rdsadmin user master_username using master_password"
  2. Supprimez un tablespace en appelant. rdsadmin.drop_tablespace Pour de plus amples informations, veuillez consulter rdsadmin.drop_tablespace.

    db2 "call rdsadmin.drop_tablespace( 'database_name', 'tablespace_name')"

Vérifier l'état d'un tablespace

Vous pouvez vérifier l'état d'un tablespace à l'aide de cette fonction. cast

Pour vérifier l'état d'un tablespace
  1. Connectez-vous à votre base de données DB2 à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance RDS de base de données Db2. Dans l'exemple suivant, remplacez rds_database_alias, master_username, et master_password avec vos propres informations.

    db2 connect to rds_database_alias user master_username using master_password
  2. Renvoie un résultat récapitulatif.

    Pour un résultat récapitulatif :

    db2 "select cast(tbsp_id as smallint) as tbsp_id, cast(tbsp_name as varchar(35)) as tbsp_name, cast(tbsp_type as varchar(3)) as tbsp_type, cast(tbsp_state as varchar(10)) as state, cast(tbsp_content_type as varchar(8)) as contents from table(mon_get_tablespace(null,-1)) order by tbsp_id"

Renvoyer des informations détaillées sur les tablespaces

Vous pouvez renvoyer des informations sur un tablespace pour un membre ou pour tous les membres à l'castaide de cette fonction.

Pour renvoyer des informations détaillées sur les tablespaces
  1. Connectez-vous à votre base de données DB2 à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance RDS de base de données Db2. Dans l'exemple suivant, remplacez rds_database_alias, master_username, et master_password avec vos propres informations.

    db2 connect to rds_database_alias user master_username using master_password
  2. Renvoie des informations sur tous les tablespaces de la base de données pour un membre ou pour tous les membres.

    Pour un membre :

    db2 "select cast(member as smallint) as member, cast(tbsp_id as smallint) as tbsp_id, cast(tbsp_name as varchar(35)) as tbsp_name, cast(tbsp_type as varchar(3)) as tbsp_type, cast(tbsp_state as varchar(10)) as state, cast(tbsp_content_type as varchar(8)) as contents, cast(tbsp_total_pages as integer) as total_pages, cast(tbsp_used_pages as integer) as used_pages, cast(tbsp_free_pages as integer) as free_pages, cast(tbsp_page_top as integer) as page_hwm, cast(tbsp_page_size as integer) as page_sz, cast(tbsp_extent_size as smallint) as extent_sz, cast(tbsp_prefetch_size as smallint) as prefetch_sz, cast(tbsp_initial_size as integer) as initial_size, cast(tbsp_increase_size_percent as smallint) as increase_pct, cast(storage_group_name as varchar(12)) as stogroup from table(mon_get_tablespace(null,-1)) order by member, tbsp_id "

    Pour tous les membres :

    db2 "select cast(member as smallint) as member cast(tbsp_id as smallint) as tbsp_id, cast(tbsp_name as varchar(35)) as tbsp_name, cast(tbsp_type as varchar(3)) as tbsp_type, cast(tbsp_state as varchar(10)) as state, cast(tbsp_content_type as varchar(8)) as contents, cast(tbsp_total_pages as integer) as total_pages, cast(tbsp_used_pages as integer) as used_pages, cast(tbsp_free_pages as integer) as free_pages, cast(tbsp_page_top as integer) as page_hwm, cast(tbsp_page_size as integer) as page_sz, cast(tbsp_extent_size as smallint) as extent_sz, cast(tbsp_prefetch_size as smallint) as prefetch_sz, cast(tbsp_initial_size as integer) as initial_size, cast(tbsp_increase_size_percent as smallint) as increase_pct, cast(storage_group_name as varchar(12)) as stogroup from table(mon_get_tablespace(null,-2)) order by member, tbsp_id "

Répertorier l'état et le groupe de stockage d'un tablespace

Vous pouvez répertorier l'état et le groupe de stockage d'un tablespace en exécutant une SQL instruction.

Pour répertorier l'état et le groupe de stockage d'un tablespace, exécutez l'instruction suivante : SQL

db2 "SELECT varchar(tbsp_name, 30) as tbsp_name, varchar(TBSP_STATE, 30) state, tbsp_type, varchar(storage_group_name,30) storage_group FROM TABLE(MON_GET_TABLESPACE('',-2)) AS t"

Lister les espaces disque logiques d'une table

Vous pouvez répertorier les espaces disque logiques d'une table en exécutant une SQL instruction.

Pour répertorier les espaces disque logiques d'une table, exécutez l'instruction suivanteSQL. Dans l'exemple suivant, remplacez SCHEMA_NAME and TABLE_NAME avec les noms de votre schéma et de votre table :

db2 "SELECT VARCHAR(SD.TBSPACE,30) AS DATA_SPACE, VARCHAR(SL.TBSPACE,30) AS LONG_SPACE, VARCHAR(SI.TBSPACE,30) AS INDEX_SPACE FROM SYSCAT.DATAPARTITIONS P JOIN SYSCAT.TABLESPACES SD ON SD.TBSPACEID = P.TBSPACEID LEFT JOIN SYSCAT.TABLESPACES SL ON SL.TBSPACEID = P.LONG_TBSPACEID LEFT JOIN SYSCAT.TABLESPACES SI ON SI.TBSPACEID = P.INDEX_TBSPACEID WHERE TABSCHEMA = 'SCHEMA_NAME' AND TABNAME = 'TABLE_NAME'"

Répertorier les conteneurs de tablespaces

Vous pouvez répertorier tous les conteneurs d'espaces disque logiques ou des conteneurs d'espaces disque logiques spécifiques à l'aide de la commande. cast

Pour répertorier les conteneurs d'un espace disque logique
  1. Connectez-vous à votre base de données DB2 à l'aide du nom d'utilisateur principal et du mot de passe principal de votre instance RDS de base de données Db2. Dans l'exemple suivant, remplacez rds_database_alias, master_username, et master_password avec vos propres informations :

    db2 connect to rds_database_alias user master_username using master_password
  2. Renvoie une liste de tous les conteneurs d'espaces disque logiques de la base de données ou de conteneurs de tablespaces spécifiques.

    Pour tous les conteneurs de tablespaces :

    db2 "select cast(member as smallint) as member, cast(tbsp_name as varchar(35)) as tbsp_name, cast(container_id as smallint) as id, cast(container_name as varchar(60)) as container_path, container_type as type from table(mon_get_container(null,-2)) order by member,tbsp_id,container_id"

    Pour des conteneurs de tablespaces spécifiques :

    db2 "select cast(member as smallint) as member, cast(tbsp_name as varchar(35)) as tbsp_name, cast(container_id as smallint) as id, cast(container_name as varchar(60)) as container_path, container_type as type from table(mon_get_container('TBSP_1',-2)) order by member, tbsp_id,container_id"