Oracle Database Administration for Microsoft SQL Server DBAs part 3 potx

10 345 0
Oracle Database Administration for Microsoft SQL Server DBAs part 3 potx

Đang tải... (xem toàn văn)

Thông tin tài liệu

D atabase administrators (DBAs) have significant responsibilities. They must not only provide reliable access to company data, but also protect that data, monitor the database environment, troubleshoot problems, and more. If the lives of DBAs were simple, what fun would that be? That is probably why I enjoy the job so much—because of the different opportunities and challenges that I get to face day to day. To provide a stable and highly available database environment, along with planning backups and performing recoveries and all the other maintenance tasks, DBAs are usually exploring how to use new features, and even learning multiple database platforms. Yes, I said it: as a DBA, you probably need to know more than one database platform. The days of being just an Oracle or SQL Server DBA are probably gone. Companies are adopting more than one database platform, and applications may import or export data from one database system to another. But why am I telling you this? You have already decided to add Oracle to your arsenal. The big question is, How hard will this be? If you are a SQL Server DBA, you don’t need to start back at square one to support Oracle databases. Certainly, there are differences between the platforms, but many of the DBA tasks are basically the same. You can apply the skills you already have to learning Oracle, using this book as your guide. This book will even translate terms from SQL Server to Oracle, because sometimes being able to speak the language is half of the battle. Before we look into the specifics of Oracle, in this chapter, we will review the role of the DBA, so you can see how to leverage the skills you already have as you learn the new database platform. We will also look briefly at the migration process. General DBA Skills The role of the DBA is more than just backing up the database and making sure the database is available. There are several hats that are worn by a DBA—from tuning queries to server configuration, as well as making sure the database is secure. Here are some of the tasks a DBA performs: ■ Installing databases ■ Backing up and restoring databases 2 Oracle Database Administration for Microsoft SQL Server DBAs ■ Troubleshooting problems and errors ■ Coding and tuning SQL statements ■ Monitoring space and growth ■ Establishing best practices ■ Configuring highly available environments ■ Developing security strategies ■ Performing maintenance tasks On a given day, a DBA may need to validate backups, handle some support issues, add users, and possibly roll out some new code to the production database. Some days may be spent just troubleshooting performance, tuning code, or working on the database model. Even if the production database might not need to be restored on a regular basis (a very good thing!), a test environment may need to be refreshed frequently. Being able to resolve an issue as quickly as possible is important, which may require research and drilling through database logs and trace files. Other general skills for a DBA might include managing projects and creating and following processes. DBAs are not working in an environment where only one person is accessing the database system. The database is normally supporting enterprise-level applications with many users and various workloads. Software vendors have stated that installing databases and monitoring them are simple tasks, but somehow there seems to be more moving parts these days. Also, new areas, such as compliance and business intelligence, provide different challenges for DBAs. The DBA may have the responsibility to back up databases and restore and copy them into another environment. The DBA may be required to design the database model and coding procedures. A DBA may even be more of an enterprise architect, who knows how to use data at an enterprise level to support the business and add value through business intelligence solutions. This type of role would also involve assessing if the right tool is being used, understanding the differences in platforms, and managing these to help make better design decisions. Chapter 1: The Database Administrator 3 Where Do DBAs Belong in an Organization? Are DBAs in production support, the architecture team, the engineering team, or the development team? Actually, they could probably be a part of all these teams or in a separate group altogether. But in any case, they still need to work with all the teams. DBAs work with system administrators for configuring operating systems and providing input to hardware decisions for the environment. DBAs work with developers to design systems and provide coding standards and best practices for developing applications that use databases. DBAs work with networking and interface teams for connections and hooks into the database. DBAs work with users, operations, and anyone else who needs access to the database. DBAs are considered to be experts in the area of databases, and they are expected to know enough information in other areas to be able to support and communicate needs for the database environment. Some DBAs may even be considered engineers instead of administrators, which implies more of a design and architecture type of role than production support. Depending on the size of the company and number of databases, there might be one DBA who does it all, or separate DBAs, such as a system DBA, an application DBA, a development DBA, and an architecture DBA. In following compliance regulations, the separation of these roles for the DBAs is becoming more important. Just as application developers shouldn’t have access to the production system, the development DBA may just be working in the development space, and passing scripts to production support DBAs for execution. The development DBA could be working with the developers on the design of the database application, developing the data model and data flows. The role might involve looking at performance and coding SQL, as well as seeing how best to implement new features. The system DBA will concentrate on backups, space monitoring, and maintenance jobs like reviewing statistics and rebuilding indexes. This DBA would probably be the one who provides production support and runs prepared scripts for changing objects or implementing upgrades. The roles for DBAs also depend on whether applications are developed in-house or third-party applications are running in the environment. 4 Oracle Database Administration for Microsoft SQL Server DBAs Database Installation Planning Several pieces need to be coordinated and communicated to install and upgrade databases. Basic installations wouldn’t need much planning if we were just installing software on a desktop somewhere and the application was used by just one person. Also, an organization will probably need more than just one database, so a repeatable process would be useful. DBAs need to manage installations to be able to communicate needs to other teams for hardware and operating system configurations. They must get details about the application to make sure that the database has the features needed. Properly managing database installations is important for planning upgrades and implementing enterprise monitoring systems. On a smaller scale, this planning is useful for patching, making changes to security configurations, and rolling out auditing tools. Developing standards and building a process will create a more consistent and stable database environment. When installing SQL Server, you can choose where to put data files and log files, if the instance is the default unnamed or named instance, which patch set is to be applied, if Reporting Services and Analysis Services are to be installed, and so on. You probably have a checklist so that a standard installation can be repeated on multiple databases. Creating a checklist or standard installation document is just as important for Oracle databases. Instance names, parameters that should be set, components that should be installed, Oracle home directories, directories for data files and log files, as well as recovery areas, should all be included. Table 1-1 shows high-level checklists for preparing to install SQL Server and Oracle databases. Notice that many of the same tasks are listed for both platforms. (Chapter 3 covers Oracle installation in detail.) Leveraging Skills We’ve reviewed some general DBA skills and practices, which you are probably currently applying to support the SQL Server system you are managing. Now let’s look at how these skills provide a starting point for learning Oracle. Chapter 1: The Database Administrator 5 Table 1-2 compares the skills needed for managing SQL Server databases with those required for managing Oracle databases. You probably expected that these tasks and skills are needed no matter which database platform is being supported and managed. The trick is discovering the differences, such as new best practices, variations in features, and differences in syntax for these tasks in Oracle. This way, you can distinguish what you already know from what you need to learn. For example, whether the database is Oracle or SQL Server, part of the DBA’s job is to make sure things are backed up properly, including having a strategy for the types of backups required. Recovery and restore procedures are also part of this strategy. You already understand general backup concepts. You know that you want transaction log backups and to be able to recover up to a point in time, as you’ve set up in SQL Server. Now you need to know the details of backup and restore options in Oracle. For example, to create a backup in SQL Server, you execute a backup database command; in Oracle, using the RMAN utility, you execute a backup database command—that’s simple enough, right? 6 Oracle Database Administration for Microsoft SQL Server DBAs SQL Server Oracle Obtain software and release notes Obtain software and release notes Configure Windows, memory, etc. Validate operating system configuration Set up domain account and privileges Create user for installing Oracle and processes (other users might be needed for other components) Allocate storage Allocate storage Configure network Configure network Install software Install software Validate install Validate install Back up system, excluding .mdf and .ldf files Back up system, excluding data files TABLE 1-1. SQL Server and Oracle Installation Checklists System monitoring is another example. Understanding why certain areas need to be monitored for better-running databases is half of the battle. If you know the information you want to monitor, then you just need to find out how to do it in Oracle. Knowing which areas to check comes from the experience of dealing with databases and troubleshooting issues in the past. Performing health checks against the database and reviewing database logs are good first steps. Health checks are not just looking into current issues, but also monitoring several areas and verifying that databases are running well. Health checks in SQL Server could be verifying if jobs are running properly, checking disk space, reviewing last-analyzed-for statistics, making sure old backups have been purged, and running other monitoring scripts. Oracle’s high-level list of health checks include validating backups, checking available space in tablespaces and file systems, making sure statistics are up to date, and verifying that other scripts are running and completing as expected. Chapter 1: The Database Administrator 7 Task/Skill SQL Server Oracle Backing up X X Restoring X X Disaster recovery planning X X Monitoring X X Performance tuning X X Patching X X Installing X X Troubleshooting X X Coding X X Developing standards and best practices X X Implementing security X X Capacity planning X X Managing projects X X TABLE 1-2. SQL Server and Oracle Skill Sets The home page of Oracle Enterprise Manager, shown in Figure 1-1, provides a quick look at the status of the database. It shows if the database is up or down, a list of errors in the alert log, and general server information about CPU and active sessions. Checking system-level resources, such as CPU and memory usage, in a Microsoft Windows system is probably already part of your SQL Server health check routine. Knowing that these details are available in Oracle Enterprise Manager gives you a good place to start. You’ll learn more about Oracle Enterprise Manager in Chapter 5. If you have scripts created in Perl or another programming language to monitor and manage SQL Server, these scripts can be leveraged to create similar scripts for Oracle. Having such scripts is a great start. 8 Oracle Database Administration for Microsoft SQL Server DBAs FIGURE 1-1. Oracle Enterprise Manager home page Database Migrations You might need to learn Oracle because your company’s current database will be converted from SQL Server to Oracle. There are various ways to migrate, but all begin with a solid plan. The options available have varying inputs and outputs, as well as varying amounts of downtime and risk. You will need an Oracle database, a way to convert the definitions of the tables from SQL Server datatypes to Oracle datatypes, a way to move the data over to the new system, and a way to convert the stored procedures and packages. Depending on how big and complex the database is, this could be a very simple or a very complicated move. Not all of the datatypes can translate exactly from one platform to another. Table 1-3 shows just an example of some of the conversions. Moving the data is probably the least of your concerns, unless you have several terabytes of data to transfer. Data can be moved out of SQL Server with the bcp utility, and then SQL*Loader can load it on the Oracle side. SQL Server Integration Services (SSIS) packages can be created to export from one database into the other. Chapter 1: The Database Administrator 9 DBA Monitoring Checklist DBAs typically monitor the following: ■ Backup jobs ran successfully (full and logs) ■ Space on server and tablespaces/data files ■ Errors in the alert log/server log ■ Any new information in the alert log/server log ■ Security auditing ■ Scheduled jobs ran successfully ■ Current statistics The Oracle SQL Developer tool is available to assist with any of these types of migrations, as shown in Figure 1-2. The Migration Wizard sets up a repository for the work area of the conversion process. It pulls in the source information, translates the structures to Oracle structures, and then allows for movement of data online or offline, depending on how much data needs to be transferred. The constraints, primary keys, foreign keys, and check constraints are included in the migration process, and stored procedures are translated into Oracle structures. If there are issues in converting a datatype, you will get an error when attempting the migration process. (Oracle SQL Developer is discussed in more detail in Chapter 5.) NOTE Oracle SQL Developer can be used to manage SQL Server databases. Java Database Connectivity (JDBC) drivers will need to be configured with Oracle SQL Developer before the SQL Server tab is present to connect to the SQL Server database. Details on the procedure are available from the Oracle SQL Developer Help menu. Search for “database: third-party JDBC drivers.” Well, pulling the SQL Server database over into an Oracle database with the provided tools sounds simple enough. Then the fun begins. Just because 10 Oracle Database Administration for Microsoft SQL Server DBAs SQL Oracle DATETIME DATE, TIMESTAMP FLOAT NUMBER VARCHAR VARCHAR2 CHAR CHAR VARBINARY BLOB NUMERIC NUMBER TABLE 1-3. Example Datatype Conversions the SQL Server database is now available in Oracle doesn’t mean that all of the indexes, statistics, and types of stored procedures are the best for use in Oracle and will perform optimally. Testing and more testing are needed to validate that the new structures and datatypes match those in the stored procedures, tables, and views. Validation of the data should include looking at the timestamps and verifying that times as well as dates match up as needed. Indexes and referential integrity need to be verified. The stored procedures need to be checked to ensure they can return expected results. Jobs will need to be scheduled using DBMS_SCHEDULER. Permissions need to be examined to confirm that the security configured for access by the users is present. As these pieces get validated for the application, you can look at the areas that would benefit from different standards or from using some new features in Oracle. You can see how you did it in SQL Server and consider the best way to do it in Oracle. The rest of this book will help guide you along that path. Chapter 1: The Database Administrator 11 FIGURE 1-2. Migration Wizard in Oracle SQL Developer . performs: ■ Installing databases ■ Backing up and restoring databases 2 Oracle Database Administration for Microsoft SQL Server DBAs ■ Troubleshooting problems and errors ■ Coding and tuning SQL. RMAN utility, you execute a backup database command—that’s simple enough, right? 6 Oracle Database Administration for Microsoft SQL Server DBAs SQL Server Oracle Obtain software and release notes. manage SQL Server, these scripts can be leveraged to create similar scripts for Oracle. Having such scripts is a great start. 8 Oracle Database Administration for Microsoft SQL Server DBAs FIGURE

Ngày đăng: 04/07/2014, 05:20

Tài liệu cùng người dùng

Tài liệu liên quan