This section describes how to install a new repository, how to migrate
data from a repository installed under a previous release, and how to upgrade
a repository that was installed under a recent release. The following topics
are covered:
This section is intended for use by Oracle database administrators (DBAs)
and requires knowledge of SQL and Oracle database management.
Caution:
Do not use any of the procedures in this section unless you
have first installed Oracle Designer or Oracle Designer Repository at
a client workstation.
System Requirements
The Operating Systems and Database server versions certified for use with Oracle Designer are listed on Metalink (metalink.oracle.com)
The client workstation and the database server can be on the same machine (Windows only), or on different machines.
System requirements for a client workstation are listed in the Oracle Developer Suite Installation Guide. System requirements for the database server are listed in the Oracle Database Installation Guide. Additional requirements for the database server are:
For each Oracle Designer repository:
approximately 140 MB in the SYSTEM tablespace for the repository packages, procedures and views
between 492 MB and 2.4 GB in other tablespaces, for the repository data
15 MB for the temporary tablespace
(for databases not using automatic undo only) 10 MB for the rollback segment
version of SQL*Plus compatible with the database
version of TNS Listener compatible with the database
Note:
If you are migrating from a release 6.0 repository, the database
that is to host the release 6i repository must have the Distributed
Option installed.
For Oracle Designer running against an Oracle9i
or Oracle8i Standard Edition database, Server Generator will not
be able to generate bitmap indexes, function-based indexes or materialized
views
Planning a New Repository
If you are installing a brand-new repository, you need to take a number
of decisions about its features before you begin the repository installation
process. You will be prompted for the following information during installation:
repository size
tablespace details
datafile details
use of public synonyms
In addition, you need to consider the following at this stage:
use of version control
Repository Size
During installation you are asked to specify the repository size as Small,
Medium or Large in order to set appropriate tablespace sizes.
As an approximate guide, a small repository might contain up to 20,000
element definitions, a medium repository up to 100,000 element definitions
and a large repository more than 100,000 element definitions. If you are
installing a production repository, use these figures to make your choice
unless you believe your requirements will be significantly different. If
you are just installing a repository for evaluation purposes, choose Small.
If you choose Small, tablespaces are created with default initial extent
and next extent values of 100K. Choosing Medium or Large will increase
the initial extent and next extent values for all tablespaces except SYSTEM
and TEMPORARY.
Tablespace Details
SQL Script Method
The SQL script method creates tablespaces with the default names and sizes
as shown in the table for the manual method below. You can, however, modify
these details before you run the CKCREATE script, as described later in
the section on installing using the script method.
Manual Method
If you use the manual method, you will create tablespaces manually as part
of the installation procedure.
For a production repository, we recommend that you create the dedicated
tablespaces with the sizes as shown in the table below.
For a repository that is to be used purely for evaluation or trial purposes,
you may just want to create two tablespaces, one for the indexes and one
for the tables. In this case, use the sizes indicated in the table against
"Total for index tablespaces" and "Total for table tablespaces" respectively
(note that you can use this technique only with the manual method).
We also recommend using the tablespace names shown or similar easily
identifiable names, as you will need to select them individually later.
The following table shows the minimum tablespace sizes in KB for small,
medium and large repositories:
Tablespace name
Minimum tablespace size (KB)
Small
Medium
Large
CONSTANT_GROW_INDEXES
2048
7030
11000
CONSTANT_GROW_TABLES
2048
4440
9000
DEPENDENCY_INDEXES
10240
23000
30000
DEPENDENCY_TABLES
2048
4560
9600
DIAGRAM_INDEXES
4096
4680
10000
DIAGRAM_TABLES
2048
2048
2640
LOB_DATA
1024
2048
5000
RAPID_GROW_INDEXES
303104
1148440
1750000
RAPID_GROW_TABLES
89200
235200
463000
SYSTEM_META_INDEXES
30720
30720
30720
SYSTEM_META_TABLES
20480
20480
20480
TEMPORARY_INDEXES
10240*
20000*
20000*
TEMPORARY_TABLES
10240*
10240*
10240*
VERSION_INDEXES
10240
12000
40000
VERSION_TABLES
5600
10800
19440
Total for index tablespaces:
370688
1245870
1891720
+ Total for table tablespaces:
132688
289816
539400
= Total sum of tablespaces:
503376
1535686
2431120
Additional tablespaces:**
REPOS_RBS (rollback)
10244
10244
10244
REPOS_TEMP (temporary)
15372
15372
15372
* These sizes are based on values for INITIAL and NEXT (see table below)
of 100K. If you increase the INITIAL and NEXT values, adjust the sizes
for TEMPORARY_INDEXES and TEMPORARY_TABLES proportionately (e.g. if you
double the value of INITIAL and NEXT, double the sizes marked *).
** These additional tablespaces are required only if suitable tablespaces
do not exist already. For example, for rollback an Oracle9i database
using automatic undo can make use of the UNDOTBS1 tablespace installed
with the database.
Caution:
The tablespace sizes given above are estimated to ensure
completion of the installation and to provide for initial use. More free
space will be required for continuing use of the repository.
The minimum free space sizes given in the previous table are based on certain
assumptions about the storage parameter values. The following table shows
the tablespace storage parameter values assumed for a small repository:
Storage parameter
Value
INITIAL
100k
NEXT
100k
PCTINCREASE
0
MINEXTENTS
1
MAXEXTENTS
unlimited
For medium and large repositories you will need to adjust the storage parameter
values accordingly.
Datafile Details
You need to decide the name and location of the datafiles to be used for
the various tablespaces that are created. We recommend using a dedicated
datafile for each tablespace, with a datafile name that clearly indicates
the tablespace to which the file relates, e.g. SCM_CGIND.ORA for CONSTANT_GROWTH_INDEXES.
If you use the manual method of repository installation, you can choose
to set AUTOEXTEND on for each datafile when you create it. Doing so avoids
the risk of running out of extents during installation, provided that you
have sufficient free disk space on the drive.
You can always set AUTOEXTEND on for a datafile after installation is
complete, but use this option with care as it allows the size of a file
to grow unchecked.
Use of Public Synonyms
Users can access the repository through either private or public synonyms,
and you are prompted to choose the access method during installation. (You
can change it later using the Repository Administration Utility.)
Public synonyms enable you to give users repository access using just
one set of synonyms, instead of creating one set for each user. For each
Oracle instance, you can only have one repository accessed using public
synonyms because public database objects must be unique.
We strongly recommend using public synonyms. Only use private synonyms
for a maximum of 10 users. Using public synonyms maintains repository performance,
for example by reducing the time it takes to complete tasks such as reconciling
grants for all repository users.
If you choose to use public synonyms, you will need to grant the repository
owner the database privileges CREATE PUBLIC SYNONYM and DROP PUBLIC SYNONYM.
Under the script method of installation you answer a simple Yes/No prompt
for this; under the manual method you must grant these privileges explicitly.
For more information about repository use of private and public synonyms,
look in the Repository Management online help index under "synonyms".
Use of Version Control
Version control is the process of maintaining multiple versions of software
development objects and is a fundamental requirement if you are using the
repository for software configuration management.
Although you do not need to specify during installation whether to enable
version control, it is a good idea to consider its implications at this
stage. Unless it is enabled, you cannot use the software configuration
management features of the repository, such as workareas, configurations,
check in, check out and merge. However, once version control is enabled
you cannot disable it, so you should carefully consider whether it
is really necessary for a particular repository and its data.
Installing a New Repository
For new installations under Oracle9iDS, you must install a new repository
on an existing database. Because no preconfigured repository is supplied
with this release, you must define the tablespace sizes and allocations
as part of the installation.
The installation process can take several hours to complete, depending
on the speed of the server, the client and the connections between them.
There are two methods of installing a new repository:
using interactive SQL scripts
manually
With the SQL script method, the installation process is semi-automated;
you run a series of SQL scripts, which prompt you for any necessary input.
You can also change the input parameters before you run the script that
creates the repository tablespaces and other objects.
With the manual method, you create everything by entering individual
SQL statements. This takes longer than the script method, but allows you
a greater degree of control over the installation process.
Both methods require you to execute a series of pre-installation procedures,
and also involve running the Repository Administration Utility to complete
the installation process.
Pre-Installation Procedures
Whether you will be installing by the script method or the manual method,
you must perform the following steps first, at the database server:
Step
1 - Log On to the Machine That Hosts the Oracle Database
Log on to the machine that hosts the Oracle database you will be using
for the repository.
Step
2 - Ensure Correct Settings for Database Initialization Parameters
Oracle9i Databases Using a Server Parameter File
With Oracle9i the initialization parameters are typically managed
by a server parameter file (SPFILE), a binary file that resides in the
database Oracle home on the server in the following default location:
If the database is using a server parameter file that does not have the
settings shown under "Set the Database
Initialization Parameters" later in this section, you will need to
do the following before proceeding:
Start SQL*Plus.
Connect as SYS using the AS SYSDBA clause (for example SYS/psw@alias
AS SYSDBA).
At the SQL> prompt, enter:
alter system set param_name = param_value [,param_name = param_value ...]
scope = spfile;
where param_name and param_value are the name and value of
an entry in the SPFILE.
Exit from SQL*Plus.
See the Oracle9i Database Administrator's Guide for full details
about managing initialization parameters using a server parameter file.
Oracle8i Databases (and Oracle9i Databases Using INIT.ORA)
Parameters for configuring the Oracle database at startup are contained
in a file named INIT.ORA. This step checks the setting of the relevant
parameters and changes them where necessary.
Read "Set the Database Initialization
Parameters" later in this section. This contains important information
to help you set the parameters to the correct values for your installation.
Find the INIT.ORA file, which should be at:
database_Oracle_home\ADMIN\dbname\PFILE\INIT.ORA
where database_Oracle_home is the location to which the Oracle database
was installed, and dbname is the database name (e.g. the name
portion of the name.domain global database name).
If there is more than one Oracle database instance on the server, make
sure that you locate the correct file.
Using a text editor or similar program, open the INIT.ORA file, check
the current settings and make any necessary changes to the file.
When you have finished, save your changes and close the INIT.ORA file.
Step
3 - Start or Restart the Oracle Database If Necessary
If the database is not already started, start it now.
If the database is already started and you changed the INIT.ORA file
in the previous step, shut down and restart the database.
Step 4 - Ensure That TNS Listener
Is Started
You need to have a TNS Listener service running. This is a utility that
handles database connection requests.
Under Windows, click Start > Settings > Control Panel > Services.
In the Services dialog box, if the service named Oracledatabase_Oracle_homeTNSListener
does not show "Started" in the Status field, select this service and click
the Start button (where database_Oracle_home is the location to
which the Oracle database was installed).
Under UNIX, enter the command lsnrctl
status. Under the heading "Services Summary...", check that
there is an entry reading "database_name has 1 service handler(s)."
If there is no entry for the desired database, then at the LSNRCTL> prompt,
enter the command start.
When this has completed successfully, enter the command status
and check again.
Before installing Oracle Designer Repository on an Oracle 8.1.7 database, you need to set
up the installation workstation to use the Oracle 8.1.7 import and export
utilities. To do so, perform the following steps at the workstation from which you
will be running the repository installation:
From the Oracle 8i installation media, install the Oracle 8.1.7 import
and export utilities in a dedicated Oracle home.
In the Windows Registry, locate the key named:
For Designer 10g - 9.0.4.x
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEn\REPOS61
where KEY_HomeName/ HOMEn is the home name of the oracle home where Designer is installed for a multiple Oracle home environment, but is not present where the default
Oracle home is being used.
Change the value of the EXECUTE_IMPORT and EXECUTE_EXPORT variables
to point to the new Oracle home. Thus if the new Oracle home is d:\des_817,
the settings would be:
Before installing Designer Repository on an Oracle 9i database, you need
to set up the installation workstation to use the Oracle 9i import and export
utilities. To do so, perform the following steps at the workstation from which you will be running
the repository installation:
From the Oracle 9i installation media, install the Oracle 9i import and export
utilities in a dedicated Oracle home.
In the Windows Registry, locate the key named:
For Designer 10g - 9.0.4.x
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEn\REPOS61
where KEY_HomeName/ HOMEn is the home name of the oracle home where Designer is installed for a multiple Oracle home environment, but is not present where the default
Oracle home is being used.
Change the value of the EXECUTE_IMPORT and EXECUTE_EXPORT variables
to point to the new Oracle home. Thus, if the new Oracle home is d:\des_9i,
the settings would be:
d:\des_9i\bin\exp.exe
d:\des_9i\bin\imp.exe
Installing a Repository (SQL Script Method)
The SQL scripts available are shown, with a brief description, in the following
table:
Script
Description
ckqa
Collects input from you for passing on to subsequent scripts.
Input is placed in a file named CKPARAMS.TXT, which you can edit before
continuing with further scripts.
ckvalqa
Validates the user input collected during the ckqa stage.
You need to run this script only if you have modified the CKPARAMS.TXT
file since you last ran ckqa.
ckcreate
Creates the database objects required by the repository.
Also creates the repository owner with the necessary privileges.
ckcreate_mb
Same as ckcreate, but for use with a multibyte character-set
database.
ckreport
Creates a report (in the file CKREPORT.LST) on the database
objects created by ckcreate or ckcreate_mb.
ckclean
Removes the repository, deleting all the database objects
created by ckcreate or ckcreate_mb.
To install a new repository using the script method:
Open a Command Prompt window and set the current directory to the one where
the scripts are stored:
cd d:\Oracle_home\repadm61\admin
where Oracle_home is the Oracle home directory where the client
tools were installed.
From the Command Prompt window, start SQL*Plus:
d:\Oracle_home\bin\sqlplus
At the "Enter user-name:" prompt, enter the full connect string in the
form:
sys/psw@host [as sysdba]
The AS SYSDBA clause is mandatory for an Oracle9i database.
At the SQL> prompt, enter:
@ ckqa
This script creates a file named CKPARAMS.TXT (in the same directory as
the script files), based on the input you supply while the script is running.
The script displays a number of prompts, for which the responses are
shown in the following table:
Prompt
Response
Enter TNS connect string for server
The database alias (same as the host string in step
4).
Enter password for SYS
The password for the SYS user (same as psw in step
4).
Enter the repository size you wish
to create...
S, M or L for a small, medium or large repository (see
Repository
Size earlier in this chapter).
Dropping temporary table CKRAU_TEMP
None needed; ignore any message of the form "ORA-00942:
table or view does not exist."
Enter datafile location and name for
tablespace
The name, and optionally the location, of the datafile
for the repository tablespace indicated. Use a datafile name that clearly
indicates the tablespace to which the file relates, e.g. SCM_CGIND.ORA
for CONSTANT_GROWTH_INDEXES. The default location is database_Oracle_home\DATABASE.
To store the datafiles in a different location, enter the full pathname
and file name.
For ten or more subordinate users, we
recommend giving access using public
synonyms. Do you wish to grant create/drop
public synonym privilege to Repository
Owner?
Press ENTER. The script then validates your
input.
Please verify the above values. Edit
'ckparams.txt' to make any changes.
Then run ckparams.txt.
Review the values listed on the screen. These
will be the input for the ckcreate script. You should not normally need
to change any of these values, but if you do want to make changes (e.g.
to increase the size of a tablespace) continue with step 6, otherwise go
on to step 7.
(Optional) If you want to make any changes to the parameter values, edit
the file CKPARAMS.TXT, then save and close it.
Run CKPARAMS.TXT by entering the following in the SQL*Plus window:
@ ckparams.txt
Validate the changes by entering the following:
@ ckvalqa
Enter the following:
@ ckcreate[_mb]
where the "_mb" extension is for use only with a multibyte character-set
database.
Ignore any message of the form "ORA-01919: role 'CK_ORACLE_REPOS_OWNER'
does not exist".
(Optional) Run the report to list the database objects created:
@ ckreport
The report output is stored in the file CKREPORT.LST in the same directory
as the script files.
Exit from SQL*Plus and continue with the manual method at the point where
you start
the Repository Administration Utility. Note that the scripts create
the repository owner with the username REPOS_MANAGER and the password MANAGER.
We recommend that you change the password as soon as possible after installation
is complete.
The remaining steps take place at the client workstation from which
you will be running the repository installation. The current release of
Oracle Designer 10 g or Oracle Designer Repository client software must
be installed at this workstation.
Step 2
- Create Tablespaces for the Repository Tables and Indexes
For a production repository, we recommend that you create dedicated tablespaces
as indicated earlier under "Tablespace Details".
Proceed as follows:
Start SQL*Plus at the client.
Connect to the database as SYS (for an Oracle9i database, use the
AS SYSDBA clause, for example SYS/psw@alias AS SYSDBA).
To create a new tablespace, enter:
create tablespace tbs_name datafile filespec size nnk
default storage (initial nnnk next nnnk minextents n
maxextents unlimited pctincrease n);
where tbs_name is the name of the tablespace, and filespec
is the complete file specification for the data file (default location
is database_Oracle_home\DATABASE).
Step
3 - Establish an Undo Tablespace or Rollback Segment for the Installation
Oracle9i Databases Using Automatic Undo
If the database is operating in automatic undo mode (UNDO_MANAGEMENT initialization
parameter is set to AUTO), undo operations use a dedicated undo tablespace
instead of a rollback segment. In many cases, an undo tablespace is created
by default (e.g. with the name UNDOTBS) when the database is created. If
so, use that tablespace.
Set the UNDO_TABLESPACE parameter in the database initialization file (SPFILE
or INIT.ORA as appropriate) to point to the new tablespace.
Oracle8i Databases, and Oracle9i Databases Using Manual Undo
You need at least one non-SYSTEM rollback segment for the installation.
The rollback segment must be online and have 10 MB free space.
During installation, the Nominate Rollback Segment listbox is disabled
and the method described in this step is the only way to ensure a specific
rollback segment is used.
You should ensure that the database that will host the repository has
sufficient rollback segments to avoid contention for rollback segments.
Refer to your Oracle database documentation for information about tuning
the database to avoid resource contention.
To create a new tablespace for the rollback segment:
where tbs_name is the name of the tablespace, and filespec
is the complete file specification for the data file.
To create the rollback segment and put it online:
create rollback segment rbs_name tablespace tbs_name storage
(initial 1m next 1m minextents 3 optimal 4m);
alter rollback segment rbs_name online;
where rbs_name is the name of the rollback segment, and tbs_name
is the name of the tablespace for the rollback segment.
Step 4 - Check That the SYSTEM
Tablespace Has 140 MB of Free Space
The repository packages, procedures and views are stored in the SYSTEM
tablespace, and need 140 MB of free space.
To show the size in MB of free space in all the tablespaces, including
SYSTEM:
select tablespace_name, sum(bytes)/1024/1024 from dba_free_space
group by tablespace_name;
If there is not enough free space in the SYSTEM tablespace, you can use
one of three methods to increase its size: resize a data file, add
a data file, or use AUTOEXTEND.
To increase the SYSTEM tablespace size by resizing a data file:
alter database datafile filespec resize nnm;
where filespec is the complete file specification for the data file;
nn
is the new size in megabytes.
To increase the SYSTEM tablespace size by adding a data file:
alter tablespace system add datafile filespec size nnm;
To set the AUTOEXTEND option on the current data file used for the SYSTEM
tablespace:
alter database datafile filespec autoextend on;
where filespec is the complete file specification for the original
data file used for the SYSTEM tablespace.
Use the AUTOEXTEND method with care, however, as it allows a data file
to grow unchecked.
Step 5 - Create the Repository
Owner
Create an Oracle user account that will be used for the repository owner
and assign a default tablespace and a temporary tablespace to this user.
To see which tablespaces are online:
select tablespace_name, status from dba_tablespaces;
To create the temporary tablespace for the repository owner:
where temp_tbs_name is the name of the tablespace; filespec
is the complete file specification for the data file; nn is the
size in kilobytes (4500k is recommended).
To create the repository owner:
create user repos_owner identified by password
default tablespace dflt_tbs_name temporary tablespace temp_tbs_name;
where:
repos_owner is the username you want to use for the repository owner.
This is the username under which you will install the repository, and under
which the repository will subsequently be administered. You cannot use
the names SYSTEM or SYS for this. The tables, views and packages of the
repository will be stored in the repository owner's schema.
password is the password that the repository owner will use to log
on to the repository.
dflt_tbs_name is the name of the default tablespace for the repository
owner. If you have chosen to partition the repository (see "Create
tablespaces..."), you should use the tablespace that will be used for
the rapid growth instance data. If you will not be partitioning the repository,
you can use any available tablespace.
temp_tbs_name is the name of the temporary tablespace for the repository
owner, and is used for sort operations.
Step 6 - Log On to Windows at the
Client
If you have not done so already, log on to Windows at the client workstation
from which you will be running the repository installation.
Step 7 - Connect to
the Database As SYS
To be able to create the repository owner role (as described in the next
step), you need to be connected to the database as user SYS.
If you are not already connected as SYS, click the Start button, then
choose Programs > Oracle - database_Oracle home > Application Development
> SQL Plus.
In the Log On dialog box, fill in the fields as shown in the following
table:
Field
Enter...
Notes
User Name
SYS (not SYSTEM)
Password
The password for SYS
Host String
database_alias [AS SYSDBA]
The AS SYSDBA clause is mandatory
for an Oracle9i database.
Step
8 - Create and Grant the Role CK_ORACLE_REPOS_OWNER for System Privileges
Create a role named CK_ORACLE_REPOS_OWNER for system privileges (you will
grant this role to the repository owner later):
@ Oracle_home\repadm61\utl\ckrorole.sql
where Oracle_home is the directory to which Oracle Designer
or Oracle Designer Repository was installed on the client workstation.
This command runs a SQL script that creates the role CK_ORACLE_REPOS_OWNER
and grants it a set of privileges.
Execute the following SQL statements to avoid various potential problems:
grant execute on dbms_rls to repos_owner;
grant execute on dbms_lock to repos_owner;
grant execute on dbms_pipe to repos_owner;
grant create table to repos_owner;
grant create view to repos_owner;
grant create procedure to repos_owner;
grant create synonym to repos_owner;
grant create sequence to repos_owner;
grant select on sys.v_$nls_parameters to repos_owner with grant option;
grant select on sys.v_$parameter to repos_owner;
grant select on dba_rollback_segs to repos_owner;
grant select on dba_segments to repos_owner;
grant create any synonym to repos_owner;
grant drop any synonym to repos_owner;
where repos_owner is the username of the repository owner.
Caution:
We do not recommend that the repository owners account should
have the privilege SELECT ANY TABLE if you are installing a repository.
This will give users problems when using this product because their account
can see repositories for which they have no access. However, users may
need the privilege to use specific repository tools or utilities on a repository
(for example, registration).
Note:
Take extra care to grant select access correctly on SYS.V_$PARAMETER,
otherwise the installation fails at stage CKGLBWRK. This results in an
invalid JR_WORKAREA package and a failure to create the global shared workarea
and system folder. If this should happen, simply recompiling the package
and restarting installation does not cure the problem; a manual workaround
is given in the "Troubleshooting" section.
If applicable, follow the further instructions that are displayed as part
of the script.
One consideration will be how to give subordinate users access to the
repository. For ten or more subordinate users, we recommend giving access
using public synonyms. To enable the repository owner to grant and revoke
access using public synonyms, you must make the following grants to the
repository owner:
grant create public synonym to repos_owner;
grant drop public synonym to repos_owner;
Grant the role to the repository owner:
grant ck_oracle_repos_owner to repos_owner;
Grant connection and resource roles to the repository owner:
grant connect, resource to repos_owner;
The CONNECT role enables the repository owner to connect to the repository.
The RESOURCE role grants unlimited quotas to the repository owner on
all tablespaces, including SYSTEM.
Close SQL*Plus.
Step
9 - Start the Repository Administration Utility
Click Start and:
For Oracle Designer 10g - 9.0.4.x
Choose Programs, Oracle Developer Suite 10gIDS_home, Oracle Software
Configuration Manager and then Repository Administration Utility
For Oracle Designer 10g R2 and above
Choose Programs, Oracle Developer Suite 10gR2IDS_home, Designer , and then Repository Administration Utility
In the Connect dialog box, fill in the fields as shown in the following
table:
Field
Enter...
User Name
The username of the repository owner (indicated
by repos_owner in the examples above). If you used the SQL script
method to install the repository, the default username is REPOS_MANAGER.
Password
The password for the repository owner. If you
used the SQL script method to install the repository, the default password
is MANAGER.
Connect String
The database alias. Make sure that there is an
entry for this alias in the TNSNAMES.ORA file in the Oracle home directory
where the Oracle database Import and Export utilities are installed.
Step 10 - Check Privileges,
Tablespaces and Parameters
In the Repository Administration Utility, click the Check Requirements
button.
Under Parameter Settings, check the parameter settings. If any parameter
values are different from those in the table below, set the values in the
Windows Registry at the client workstation before continuing. In the table,
d:
identifies the drive, and Oracle_home the directory, where Oracle
Designer or Oracle Designer Repository was installed. All key names shown in the
table are preceded by "HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\".
The following table shows Windows Registry key names, the parameters
relevant to repository installation, and an indication of what each parameter
value should be:
Key
Parameter
Value should be...
CHELP72
HELP72_RAU
d:\Oracle_home\CDOC72\HELP\
CKRAU65.HLP
REPADM61
EXECUTE_OBJSTAT
d:\Oracle_home\BIN\CKOS61.EXE
REPADM61
EXECUTE_REPOSPARAM
d:\Oracle_home\BIN\CKCR61.EXE
REPADM61
LOG_DIRECTORY_RAU
d:\Oracle_home\REPADM61\LOGS
REPADM61
REPADM61
d:\Oracle_home\REPADM61
REPOS61
EXECUTE_EXPORT
d:\Oracle_home\BIN\EXP.EXE
REPOS61
EXECUTE_IMPORT
d:\Oracle_home\BIN\IMP.EXE
REPOS61
EXECUTE_PLUS_RAU
d:\Oracle_home\BIN\SQLPLUS.EXE
Working directory
Any writeable directory
Check also that privileges have been set up as shown in the following
table:
Choose
To
Check
Notes
Privileges > Privileges granted
for public access
System privileges required for
subordinate users to access the repository using public synonyms
Must have CREATE PUBLIC SYNONYM
and DROP PUBLIC SYNONYM if subordinate users are to access the repository
using public synonyms; otherwise ignore.
Privileges > Required
system privileges
System privileges
required to run various operations in the Repository Administration Utility
Must have ALTER SESSION,
CREATE DATABASE LINK, CREATE PROCEDURE, CREATE SEQUENCE, CREATE SESSION,
CREATE TABLE, CREATE TRIGGER, CREATE TYPE and CREATE VIEW. If enabling
and disabling subordinate users, will also need CREATE ANY SYNONYM, CREATE
ROLE and DROP ANY SYNONYM.
Privileges > Roles
granted to user
All the database
roles that have been granted to the repository owner
Check that CONNECT,
RESOURCE and CK_ORACLE_REPOS_OWNER are included in the list.
If any of the required system privileges or roles are missing, start
SQL*Plus, connect as SYS (using the AS SYSDBA clause for an Oracle9i
database) and use:
grant name to repos_owner;
where name is the name of the system privilege or role. Restart
the Repository Administration Utility and repeat the check.
Under Tablespaces, check whether the SYSTEM tablespace is fragmented
(value for Largest Extent is significantly less than that for Free Space).
If the SYSTEM tablespace is fragmented, perform a full database export
and re-import using the current version of the Export and Import utilities
(EXP and IMP). Restart the Repository Administration Utility and repeat
the check.
Close the Check Requirements window.
Step 11 - Select
the Type of Repository
On the Repository Administration Utility window, click the
(Install) button.
In the Repository Installation Options dialog box, the Support for Repository
(Core) Objects box is checked by default. In addition, ensure that the
Support for Oracle Designer Objects box is checked (if you will be using
Oracle Designer) or not checked (if you will be using Oracle Designer Repository).
Click OK, then respond to the prompt concerning the privilege CREATE PUBLIC
SYNONYM if it appears. If the repository is to have ten or more subordinate
users, we recommend giving access through public synonyms.
Step 12 - Select
the Expected Size of the Repository
In the Install a Repository Instance dialog box, choose the Small, Medium
or Large option button.
Choosing Medium or Large will increase the initial extents and next
extents values for all tablespaces except SYSTEM and TEMPORARY.
Step 13 - Assign Tablespaces
Repository tables and indexes are stored by default in the tablespace defined
as the default tablespace for the repository owner. If you used the SQL
script method, this is the TEMPORARY_TABLES tablespace. If you used the
manual method, it is the default tablespace defined when you create
the repository owner.
You can refine the tablespace assignments by selecting different tablespaces
for different categories of repository data.
To assign the tablespaces:
For the indexes, use the dropdown lists under Index Tablespaces as desired.
For the tables, use the dropdown lists under Table Tablespaces as desired.
Tip: Having selected a field on the dialog box, you can select a
tablespace quickly by typing its initial letter, repeating this letter
if necessary. Use the Tab key to move between fields.
Step 14 - Start the Installation
The installation consists of a number of stages. For each stage, a log
file is written to the log directory. These log files are named stage.LIS,
where stage identifies a particular stage, for example, CKCONST
for the constraint installation stage. You can examine or monitor the log
files while the installation is in progress, but do not delete them.
Tip: You might find it useful to view the log directory files
in date order so that you can see which ones were created most recently.
To start the installation:
On the Install a Repository Instance dialog box, click the Start button.
Click Yes at the "Do you wish to proceed?" message.
If you see the message:
Insufficient database grant privileges to perform operation.
From this point, the installation process continues automatically, and
normally needs no intervention.
If you need to interrupt the process at any point after the Control
Status dialog box is displayed, click the
(Pause) button.
When you see the message "Operation Complete", click OK followed by
Cancel to return to the Repository Administration Utility window.
If the installation appears to complete successfully, examine
the log files referred to above to ensure that Oracle errors and warnings
were not issued during object creation and compilation. In the Repository
Administration Utility, click the View Objects button and make sure that
you do not have any invalid, disabled or missing objects in the repository.
If the installation fails at any point, go to the "Troubleshooting"
section.
Using NLS Features
If you have a National Language Support (NLS) version of the repository
and you want to change the display language for certain types of text,
continue from "Setting Up the Repository for
NLS Operation", and then return to this point. Otherwise, continue
from the next section.
After You Have Installed a Repository
When the installation process has completed successfully, you need to do
the following to make the repository ready for use:
For all other databases, in order to create containers for element
definitions, at least one rollback segment that is not in the SYSTEM tablespace
must be online. In addition, some of the Repository Object Navigator utilities
may involve long-running transactions (for example, the Copy, Delete, Import
and Export utilities). These utilities allow users to specify a rollback
segment other than the default one, which has a large number of small extents
and may not be suitable for these transactions.
For this reason, we recommend that you have at least one non-SYSTEM
rollback segment available.
Note:
If you used the script method to install the repository,
the rollback segment REPOS_RBS_SEGMENT is automatically created and brought
online.
If you used the manual method and created a rollback segment
specifically for the installation, you can use that rollback segment.
To check the status of the existing rollback segments, start SQL*Plus,
connect as the repository owner and enter the following command:
select segment_name, tablespace_name, status from dba_rollback_segs;
If an existing non-SYSTEM rollback segment is suitable but is currently
offline, enter:
alter rollback segment rbs_name online;
To create suitable rollback segments, enter:
create rollback segment rbs_name tablespace tbs_name storage
(initial 500k next 500k minextents 3 optimal 4m);
alter rollback segment rbs_name online;
where rbs_name is the name of the rollback segment and tbs_name
is the name of the tablespace that will contain it.
To ensure that a rollback segment is brought online whenever the server
machine is restarted, add or edit the following line in the INIT.ORA database
initialization file (see "Setting the
Database Initialization Parameters" ):
rollback_segments = (rbs_name[, rbs_name ...])
If you want to drop an existing tablespace or rollback segment, take it
offline, then use the following commands:
drop rollback segment rbs_name;
drop tablespace tbs_name;
Enable Version Control, If Used
If you will be using version control for repository objects, you must enable
this feature in the repository.
Caution:
You cannot undo this operation. Before enabling the
version control feature, ensure this is really necessary for this repository
and its data. If in doubt, defer this operation; you can perform
it at any time. See the online help for Repository Management for a full
description of the version control functionality.
To enable version control, proceed as follows:
In the Repository Administration Utility, choose Options > Enable Version
Support.
Reply Yes to the "Do you wish to proceed?" message.
Click OK at the "Operation Complete" message.
Read the message about the use of the Repository Object Navigator and click
OK.
Test Basic Repository Operations
We recommend testing some of the basic repository operations before making
the repository available to other users.
If you are not yet familiar with basic repository operations, we recommend
reading the online help topics in the Repository Management help system
about creating a default workarea, creating containers, and creating repository
objects (that is, element definitions). In addition, if you will be using
version control, read the topics about checking in and checking out objects,
viewing the version history of an object, comparing object versions, and
merging object versions.
When using some of the tools, you may see the message "Unable to register
notification service". To stop the message appearing, choose Options >
Broadcast Options in the tool and select Disabled.
To test the repository, proceed as follows:
If you have enabled version control, create a new default workarea:
Start the Repository Object Navigator by clicking Start and choosing Programs
> Oracle Developer Suite - iDS_home > Oracle Software Configuration
Management > Repository Object Navigator (for 10g Designer) or
Programs
> Oracle Developer Suite - iDS_home > Designer
> Repository Object Navigator
Click OK to acknowledge the message about statistics.
At the Welcome screen, choose "Invoke Workarea Wizard" and click OK.
Create a default workarea using the wizard.
To see the new workarea, you will need to open a new Navigator window at
the level of Private Workareas or above.
Create a test container in a workarea. (If you have not enabled version
control, only one workarea is available.)
Create some test element definitions in the new container. Try using different
tools to create the definitions.
If you have enabled version control:
Check in one of the new objects to add it to source control.
Check out the object and update some of its properties.
Check in the object, ensuring that the version label property is updated
(e.g. from 1.0 to 1.1).
With the object selected, start the Version History Viewer (choose Version
> View Version History) and check that the expected version history displays.
In the Version History Viewer, select an object version and compare it
(e.g. by Version > Compare Other Version) with another version with known
differences.
With the object version still selected, merge the version with another
(e.g. by Tools > Merge Wizard).
Detailed instructions for carrying out these tasks are in the Repository
Management online help.
When using some tools, you may see a message beginning:
Statistics have not been computed for this repository...
You can ignore this message during repository setup or, if you want to
stop the message from appearing:
In the Repository Administration Utility, click the
(Compute Statistics) button.
Click Compute (the operation takes a few minutes to complete).
Create Subordinate
Users
If other users at your site are to have access to the repository, you will
need to create subordinate users. This is the term given to repository
users other than the repository owner. Any usernames you want to use for
subordinate users must already have been created as Oracle usernames via
a CREATE USER statement in SQL*Plus.
You create subordinate users from the Repository Administration Utility.
Creating subordinate users requires particular care to ensure that the
users have the correct:
system privileges (see the next section)
repository privileges (e.g., whether they can create configurations or
purge object versions)
For full details of the procedure to create subordinate users, see the
topic "Granting repository access to an Oracle user" in the Repository
Management help system.
Subordinate users must be assigned the CONNECT and RESOURCE database
roles. To do so, start SQL*Plus, connect as SYS (using the AS SYSDBA clause
for an Oracle9i database) and issue the following command for each
user:
Various system privileges are required by a repository owner and subordinate
users to perform certain repository operations. The following table lists
various system privileges, and indicates the operations for which the repository
owner or subordinate user will need them:
System privilege
Repository owner
Subordinate user
CREATE SESSION
Connection
Connection*
ALTER SESSION
Diagnostics
Diagnostics*
CREATE TABLE
Installation, migration
*
CREATE VIEW
Installation
*
CREATE SEQUENCE
Installation
*
CREATE PROCEDURE
Installation
*
CREATE TRIGGER
Installation
*
CREATE ANY SYNONYM
Reconcile user
DROP ANY SYNONYM
Reconcile user
CREATE PUBLIC SYNONYM
Reconcile user
DROP PUBLIC SYNONYM
Reconcile user
CREATE DATABASE LINK
Migration
*
CREATE ROLE
Reconcile user
CREATE SYNONYM
Migration
*
CREATE ANY TABLE
Registration
CREATE ANY VIEW
Registration
CREATE ANY SNAPSHOT
Registration
CREATE ANY SYNONYM
Registration
CREATE ANY PROCEDURE
Registration
CREATE ANY SEQUENCE
Registration
CREATE ANY TRIGGER
Registration
CREATE ANY INDEX
Registration
CREATE ANY TYPE
Registration
CREATE ANY CLUSTER
Registration
SELECT ANY SEQUENCE
Registration
SELECT ANY TABLE
Registration
* these privileges are granted to subordinate users when they are assigned
the CONNECT and RESOURCE roles
Diagnostics privileges are required if, for example, you wish to enable
SQL TRACE.
Registration privileges are required for registration of Oracle schemas
in the repository. See the online help for Repository Management.
Reconcile user privileges allow subordinate users to be enabled or disabled
(synonyms created or dropped) via the Reconcile button on the Maintain
Users dialog box of the Repository Administration Utility.
Some subordinate users may need additional privileges depending on which
utilities they will be running (e.g. Import/Export from the Repository
Object Navigator). To grant these, connect as SYS (using the AS SYSDBA
clause for an Oracle9i database) and enter any or all of the following
as appropriate:
grant create table to subordinate_user;
grant create view to subordinate_user;
grant create procedure to subordinate_user;
grant create synonym to subordinate_user;
grant create sequence to subordinate_user;
grant select on dba_rollback_segs to subordinate_user;
grant select on dba_segments to subordinate_user;
Grant Access Rights to Users
The user who owns a workarea, container or configuration can grant access
rights on that item to other users, or revoke them from those users.
If you have created subordinate users, test the access rights mechanism
as follows:
In the Repository Object Navigator, choose File > Access Rights > View
Access Rights.
Check the current access rights on the test workarea and container that
you created earlier.
Grant (at least) the Select access right on the workarea and container
to one of the subordinate users.
Change the connection to that user.
Check that the user can see the workarea (under Shared Workareas) and the
container.
Change the connection back to the repository owner and revoke the access
rights.
To grant an access right to all subordinate users (present or future),
grant it to PUBLIC.
Note:
If you have enabled version control, remember to grant the
Version access right on an object to any users who will be using version
control with that object.
Set Up the Broadcast Server, If Used (Windows Servers Only)
The broadcast server enables repository users to be notified immediately
of changes made to repository objects in the current container. Users can
use this feature locally (changes made in one tool are immediately visible
in other tools) or over the network (same as locally, and in addition changes
made by one user are immediately visible to other users), or they can disable
it.
The following table shows the different methods of use of the broadcast
server (local, network or disabled) and gives the procedure to follow in
each case:
Method Of
Use
Procedure
Local (desktop-only)
Set the Desktop Only broadcast option for the workstation.
Test broadcast service.
Over the network
Install broadcast server files (either at one client or server-side).
Specify the broadcast server host.
Set the Network broadcast option on every client workstation.
Run the broadcast server.
Test the broadcast service.
Disabled
Set the Disabled broadcast option
for the workstation.
Full instructions are given in the online help for Repository Management.If
you are using this feature over the network, you need to decide whether
to run the broadcast server from either a client workstation or from the
database server where the repository is installed, and install the broadcast
server files accordingly.
Start to Use the Repository
Tools
The installation of the new repository instance is now complete. Create
any workareas and containers required, grant the access rights to them
and inform subordinate users that they can now begin using the repository
tools.
If you need help at any point while using a repository tool, choose
Help > Help Topics on the tool. If a dialog box is displayed, click its
Help button.
Continued Maintenance
of the Repository
Tune the Repository
The DBA or the repository owner can perform a number of actions that are
designed to maintain or improve repository performance. For full details,
look in the Repository Management online help index under "performance".
Set the Database Initialization Parameters
The setting of the database initialization parameters can affect repository
performance.
On an Oracle9i database, the initialization parameters
are typically managed by the server parameter file (SPFILE). See the Oracle9i
Database Administrator's Guide for full details about managing initialization
parameters using a server parameter file.
Some Oracle9i databases may manage the initialization parameters
by means of an INIT.ORA file (see following paragraphs).
On an Oracle8i database (or an Oracle9i database
that does not use a server parameter file), the file INIT.ORA at the server
contains parameters for configuring the Oracle database at startup. This
file can be found at:
database_Oracle_home\ADMIN\dbname\PFILE\INIT.ORA
where database_Oracle_home is the location to which the Oracle database
was installed, and dbname is the database name (e.g. the name
portion of the name.domain global database name).
If there is more than one Oracle database instance on the server, make
sure that you locate the correct file.
The following are the recommended minimum settings.
compatible = 9.0.0 # for an Oracle9i database
compatible = 8.1.7 # for an Oracle8i database
max_enabled_roles = 30
sort_area_size = 262144
sort_area_retained_size = 65536
hash_area_size = 1048576
optimizer_index_caching = 50
optimizer_index_cost_adj = 25
shared_pool_size = 32000000
db_block_buffers # comment out on an Oracle9i database
db_block_buffers = 2000 # on an Oracle8i database
open_cursors = 3000
processes = 100
db_file_multiblock_read_count=16 # for a 4K Oracle block size
db_file_multiblock_read_count=32 # for a 2K Oracle block size
db_file_multiblock_read_count=8 # for a 8K Oracle block size
Note:
For an Oracle 10g database and above these settings can be ignored
and instead the default database parameter values can be used.
These assume that a single repository instance has been installed
for up to four concurrent users. If more concurrent users are required,
or more than one repository instance is installed, then these parameters
will require more tuning. If you are running other systems on the same
Oracle database which already require larger settings, then do not make
these any smaller.
Carefully consider whether to use or modify the above example settings.
It is the responsibility of the DBA to monitor the system and ensure that
these parameters are appropriate for the current period of activity.
Retune the INIT.ORA parameters when adding users or switching activities.
The Oracle Enterprise Manager monitors and tuning tools can help here.
We recommend that the OPTIMIZER_MODE parameter is set to its default
value CHOOSE.
As a guide to sizing your server, the following profiles were used when
testing the product internally, and found to be very satisfactory. All
testing used dedicated database server machines. Although it is supported
to have the repository running on the same machine as the client tools,
this is not the way the product is expected to be used outside of a demonstration
environment.
A typical configuration for a 5-user installation would be:
Pentium PC running Windows 4, with 128 MB of memory
Oracle SGA 80 MB
A typical configuration for a 300-user installation would be:
Sun E4500, 4 x 300 MHz running Solaris, with 1024 MB of memory
Oracle SGA 300 MB
For a standalone PC with the server and client tools running on it, a memory
size of 256 MB is advisable.
Following are some specific modifications you might want to make. On
some systems, these changes need to be made in harmony with tuning of the
operating system I/O; refer to the specific server documentation for your
system. Take care not to increase these parameter values to the point where
the SGA will no longer fit in memory.
Set the DB_BLOCK_SIZE Parameter
The default setting of this parameter is operating-system dependent. With
Oracle Designer, the recommended Oracle block size is 4096 for a repository
which contains mainly repository object data (Designer element data).With
Oracle Repository, for a mainly file store repository, the average size
of files stored would affect the most appropriate setting, with larger
average file sizes requiring larger Oracle block sizes.
Setting the DB_BLOCK_SIZE parameter can be done only before creating
a database. You can set this parameter as part of creating a new database
by running the Database Configuration Assistant, selecting the Custom option
and setting the value on the page for SGA parameter information. To run
the Database Configuration Assistant, click the Start button and choose
(for an Oracle 9i database) Programs > Oracle - database_Oracle_home
> Configuration and Migration Tools > Database Configuration Assistant
or (for an Oracle 8i database) Programs > Oracle - database_Oracle_home
> Database Administration > Database Configuration Assistant.
Set DB_BLOCK_BUFFERS to 2000 or Higher (Oracle8i databases only)
On an Oracle9i database, remove or comment out this parameter
as it is deprecated owing to the Oracle9i dynamic SGA feature.
On an Oracle8i database, if enough memory is available,
try a setting of up to 5000 (check its effectiveness using the DB_BLOCK_BUFFER
cache hits monitor).
Keeping table data rows cached is effective for speeding up the loading
of a large data file or for other operations requiring a lot of API validation.
There should be an observable drop in the number of physical disk accesses.
This is the tuning parameter which can most influence the execute and
fetch times of SQL statements. Note, however, that any increase in the
setting of DB_BLOCK_BUFFERS causes an increase in SGA memory requirement
equivalent to (<