Boost PC performance: How more available memory can improve productivity
Presentation sql server to oracle a database migration roadmap
1. SQL Server to Oracle
A Database Migration Roadmap
Louis Shih
Superior Court of California
County of Sacramento
Oracle OpenWorld 2010
San Francisco, California
3. Institutional Background
The Superior Court of California (SacCourt), County of
Sacramento is part of the statewide justice system of 58 trial
courts, Appellate Courts and the California Supreme Court.
Each county operates a Superior Court that adjudicates criminal,
civil, small claims, landlord-tenant, traffic, family law, and juvenile
dependency and delinquency matters.
SacCourt has 60 judicial officers and 760 staff who processed
over 400,000 new cases filed in FY 2008-09.
“Our Mission is to assure justice, equality and fairness for all under the law.”
DataBase Migration Roadmap
3
4. DataBase Migration Roadmap
Database Environment
SQL Server
• SQL Server 6.5, 2000, 2005 32-bit on Window
• SQL Server 2008 64-bit on VMWare/Physical Hardware
Oracle
• Oracle 10G R2, 10G R2 RAC on Sun SPARC Solaris 10
• Oracle Enterprise Manager, Grid Control on Window
• Oracle Application Express
• Oracle Migration Workbench
4
5. DataBase Migration Roadmap
Migration Objectives
Validate the purpose of migration.
Achieve Return of Investment.
Compatibility of Hardware and Software.
Accomplish Physical and Logical Model.
Meet Source and Target Application/Database Criteria.
Minimize Outage Time.
“No single best method for all cases!”
5
7. DataBase Migration Roadmap
Migration Methodology
Recommend approaches
• Traditional Waterfall System Life Cycle over Rapid Application
Development
• “As-Is” approach
Upgrade after migration.
Automate using Oracle Migration WorkBench.
Create custom installation scripts.
7
8. DataBase Migration Roadmap
SQL to Oracle Migration
1. Physical and Logical Structure
1.1 Characteristics
1.2 Data Types/Storage
1.3 Recommendations
2. Stored Procedures
3. SQL Migration
4. Database Design
5. Schema Design
6. Data Migration
7. Security
8
9. DataBase Migration Roadmap
Map Similar Database Objects
• Schema objects, data types
• Referential integrity, constraints, rules
• Triggers, stored procedure, system catalogs
Map Different Database Objects
• Connection types or models
• Temporary tables
• Application programming
• Data migration
9
Physical and Logical Structure
10. DataBase Migration Roadmap
Physical and Logical Structure
Memory SMON
PMON
MMON
……..
Process
(Dedicated/Shared)
SystemTablespace
(System,Sysaux,
Temp,Undo)
User1Tablespace
User2Tablespace
Oracle Instance/Database
Database
MasterDB
Model,Msdb,Tempdb,
resource(2008)
Database1
Process
Memory
Master = System Tablespace
Model = Template
Tempdb = Undo
Msdb = Agent Services
System = Sys Objects
Sysaux = 10g Nonsys Objects
Temp = Sorting
Undo = Rollback, Recover
SQL Server
Database2
10
11. DataBase Migration Roadmap
1.1 Characteristics
SQL Oracle
Instances/Database SGA/SID
Case Insensitive N/A
Database Database
Database and Database Owner (DBO) Schema
Database Tablespace
T-SQL Stored Procedure PL/SQL Procedure, Function or
Package
Triggers After Triggers
Complex Rules Before Triggers, Trigger for Each Row
Identity Property for a Column Sequences
View View, M-View
11
Physical and Logical Structure
12. DataBase Migration Roadmap
1.1 Characteristics (Cont.)
SQL Oracle
Transaction Logs Per Database Transaction Logs for Entire Database
Auto Commit Manual Commit or Rollback
Manual Exception Default Exception
SA Account System/manager Account
sysconfig spfile
12
Physical and Logical Structure
13. DataBase Migration Roadmap
Physical and Logical Structure
1.2 Data Types/Storage
SQL Oracle
Integer, Small Int, Tiny Int, Bit, Money,
Small Money
Number (10, 6, 3, 1, 19, 10)
Real, Float Float
Text CLOB
Image BLOB
Binary, VarBinary RAW
DateTime, Small DateTime Date
Varchar2 (max) LONG, CLOB
Varbinary (max) LONG RAW, BLOB, BFILE
13
14. DataBase Migration Roadmap
Physical and Logical Structure
1.2 Data Types/Storage (Cont.)
SQL Oracle
Database Devices Datafile
Page Data Block
Extent Extent and Segments
Segments Tablespace (Extent and Segments)
Log Devices Redo Log Files
Data, Dump N/A
14
15. DataBase Migration Roadmap
Physical and Logical Structure
1.3 Recommendations
SQL Oracle
MS Applications tend to use ASP on Clients.
ASP uses ADO to communicate to DB.
Use Oracle OLE/DB or migrate to JSP.
DB Library Use Oracle OCI calls.
IIS/ASP IAS/Fusion on JAVA 2 Platform, J2EE
Embedded SQL from C/C++ Manual conversion
Stored Procedure return Multiple Sets Find driver support Reference Cursors (i.e.
DataDirect).
Delphi, MS Access (Embedded SQL/C or MS
Library)
Use ODBC Driver.
DBO.Database Transform to Single or Multiple Schema.
DTS/SSIS Warehouse Builder
15
16. DataBase Migration Roadmap
2. Stored Procedures
Use Package for nested procedures.
Use Functions for User-Defined Functions.
Use Hints or CBO.
Remove Create/Drop temporary tables.
16
17. DataBase Migration Roadmap
3. SQL Migration
TOP function
Dynamic SQL No conversion
Case statements Decode
Unique identifier (GUID) ROWID or UROWID
Example:
select newid()
vs.
select sys_guid() from dual
17
18. DataBase Migration Roadmap
4. Database Design
Evaluate Constraints
• Entity Integrity
• Referential Integrity
• Unique Key
• Check
Use Table Partitions.
Apply Reverse Key for sequence generated columns.
Apply Flashback for restoration.
Use Oracle RAC, Active DataGuard for HA/DR.
Use Transparent Data Encryptions and remove
data encryptions.
18
19. DataBase Migration Roadmap
4. Database Design (Cont.)
Outer Joins
Oracle Exceptions (i.e. no_data_found)
Autonomous Transactions
Records and Types
Reverse Key for RAC environment
19
20. DataBase Migration Roadmap
5. Schema Design
Table (Data Types, Constraints)
• Numeric (10, 2) Number (10, 2)
• Datetime (Oracle 4712 BC, SQL 01/01/0001 – 12/31/9999)
Views (Materialized views)
Trigger (Functionality difference)
Synonyms (Public or Private)
Spatial
Create table abc (id number (10) not null, geo dsys.sdo_geometry)
vs.
Create table abc (id number (10) not null, geo geography)
20
21. DataBase Migration Roadmap
5. Schema Design (Cont.)
Data Types
• Datetime
1/300th of a second vs. 1/100th million of a second
Image and Text
• Image of data is stored as pointer vs. Image stored in BLOB
and Text in CLOB
User-Defined
• Equivalent to PL/SQL data type
Table Design
Create table sample
(datetime_col datetime not null,
integer_col int null,
text_col text null,
varchar_col varchar2 (10) null)
Create table sample
(datetime_col date not null,
integer_col number null,
text_col long null,
varchar_col varchar2 (10) null)
21
OracleSQL
22. DataBase Migration Roadmap
6. Data Migration
SQL Loader
Data Pump
Stream
Database Link or Transparent Gateway
• Create table as select.
• Insert as select.
22
23. DataBase Migration Roadmap
7. Security
Create user accounts in Oracle.
Leverage default Role and Privs.
Map user accounts to Role.
23
24. DataBase Migration Roadmap
SQL/Oracle Tool for Migration
Oracle Migration Workbench
OEM/Grid Control
Upgrade SQL to ver. 2005 with Transparent Gateway
Oracle APEX
Scripting
24