tag:blogger.com,1999:blog-160456792024-03-13T20:12:31.531+01:00INFOR-Conseils / RemoteDBAThe Best DBA in Town!Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.comBlogger12125tag:blogger.com,1999:blog-16045679.post-65498098638066801032013-07-26T15:50:00.003+02:002013-07-26T15:50:49.309+02:00Could You Live Like a DBA?<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
Have you ever wondered how everyday life would pan out if you took the DBA approach to life's events? Here are a few thoughts.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Backups</b>: You have a nightly backup routine. This means a differential backup every night, when you tell your spouse everything that has happened during the day in minute detail, and a full backup on weekends when you tell them everything that has happened during the week in your entire life. I Don't think either of you would sleep much.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Replication</b>: You are on the phone continuously, telling your twin sibling at a remote location everything that you are experiencing. Everything. What you see, hear, smell, eat, work on etc. Your twin, of course, has no life of her own, and is living vicariously through you, ever prepared for you to drop dead so she can take over. Talk about sibling rivalry.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Restores</b>: Remember that nightly backup you transferred to your spouse earlier? You periodically and randomly ask your spouse to repeat some of those conversations back to you, ensuring no detail is skipped, so you can confirm that the backup is working. Marriage counselor's number handy?</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Scans</b>: When you go looking for the soy sauce in your pantry, you read the label on every single item in there: all the spices, all the jars and bottles, every bag of chips, every bottle of juice and soda, everything, because the items are arranged in no particular order. It takes you a few hours to put together one meal, and your kids have gone to bed hungry.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Seeks</b>: After scanning through your pantry multiple times and getting tired of how long it takes each time, you decide to rearrange all the items in order by alphabet. Now you can retrieve the soy sauce in no time. The kids are happy again.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Fragmentation and Re-indexing</b>: Over time, as your spouse adds items to the pantry at random locations (because he is not a DBA) and removes items leaving gaps on the shelves, the ordering gets so out of whack that you revert to going through all items again to find the soy sauce. Eventually, you decide to create an automated re-indexing plan by having your spouse rearrange everything by alphabet once a week. Divorce lawyer's number handy?</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>More Backups</b> (because, you know, a DBA can never have enough backups): When you prepare a sandwich for your kid's school lunch, you also make a second sandwich. You pack the first one in your child's lunch box, and you courier the second one to arrive at school just in time for lunch. You don't tell anybody that you have a third one in your car, you know, just in case...</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Adding Records</b>: When you discuss baby names with your spouse for the upcoming addition to your family, you very briefly consider an integer for the name, and then even more briefly think that a tinyint would be more appropriate, before you think of the divorce lawyer and decide to shut up. You do, however, bring up the<a href="http://www.sqlservercentral.com/links/1085432/313773" style="color: #1155cc;" target="_blank">Bobby Tables</a> joke because you think it's funny. Your spouse does not.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Searching</b>: You wonder on a daily basis why you can't just enter this into Google's search box: select * from closeby_restaurants where cuisine = 'chinese' and distance_from_home <= 2 miles and deliciousness = 'awesome' and service_time = 'quick'...</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Normalization</b>: When your spouse asks you for a copy of your shopping list before he goes shopping, you point him to the location of the original list instead because you do not want to create duplicates. He throws his hands up and leaves without your list. Your items never get bought.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Normalization 2</b>: You do not have a driver's license, or a bank account, or a passport, or a mortgage in your name, because you are incapable of filling out any forms in duplicate, leave alone triplicate.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<b>Set-based Operations</b>: After the kids have gone to bed and you sit down with your spouse to watch some TV, you roll out all the TVs, desktops, laptops, tablets and phones in your house into the living room and fire up a different episode of your favorite show on each one at the same time, because you know that set-based operations are better than episode-by-agonizing-episode. The kids were very entertained when you did this with their cartoons. But the spouse - not so much.</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
If your domestic life isn't exactly a picture of happiness and you're getting grief from your spouse, kids, and siblings, now you know why. You're a DBA!</div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
<br /></div>
<div style="-webkit-text-stroke-width: 0px; background-color: white; color: #444444; font-family: Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 19px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;">
Taken from the editorials from <a href="http://www.sqlservercentral.com/">http://www.sqlservercentral.com/</a> (http://www.sqlservercentral.com/articles/humor/99113/)</div>
<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-63970214204461121542007-12-04T20:57:00.000+01:002007-12-04T21:02:41.658+01:00The SQL / PLSQL developper mantra...I read an article written by the fabulous <a href="http://asktom.oracle.com/">Tom Kyte</a> that says something that I think for many years :<br /><br /><blockquote><span style="font-style: italic;">I have a pretty simple mantra when it comes to developing database software, and I have written this many times over the years:</span><br /><br /><ul style="font-style: italic;"><li> You should do it in a single SQL statement if at all possible.</li><li> If you cannot do it in a single SQL statement, do it in PL/SQL.</li><li> If you cannot do it in PL/SQL, try a Java stored procedure.</li><li> If you cannot do it in Java, do it in a C external procedure.</li><li> If you cannot do it in a C external procedure, you might want to seriously think about why it is you need to do it.</li></ul><br /><span style="font-style: italic;">If you can do it in a single SQL statement, by all means do it in a single SQL statement. Do not waste time, energy, and CPU cycles writing procedural code that will run slower than regular SQL.</span> </blockquote><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-42947833715237849372007-10-04T21:02:00.000+02:002007-10-04T21:07:11.767+02:00Oracle 10g R2 RAC & iScsi on Windows Server 2003You can read <a href="http://www.wasabisystems.com/docs/StorageBuilderSAN_Oracle10gProof.pdf">there </a>a POC of Oracle 10g R2 RAC on a Windows Server 2003 using an iScsi device from Wasabi...<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-11757080356177742342007-10-04T20:28:00.000+02:002007-10-04T20:40:46.912+02:00Oracle Agent 10g and multiple Oracle InventoriesFind Oracle documentation (b16242) at <a href="http://download-east.oracle.com/docs/cd/B16240_01/doc/em.102/b16242/toc.htm">there</a><br />exactly at <a href="http://download-east.oracle.com/docs/cd/B16240_01/doc/em.102/b16242/addnl_tasks.htm#i1024294">here</a><br /><br /><br />There, we find "<span style="font-family:courier new;">14.2 Enabling Multi-Inventory Support for Configuration Management</span>"<br />Every time you install an Oracle software product on a host computer, Oracle Universal Installer saves information about the software installation on your hard disk. The directories and files that contain this software configuration information are referred to as the Oracle Universal Installer inventory.<br /><br />When you use Enterprise Manager to monitor your Oracle software installations, Enterprise Manager takes advantage of information saved in the Universal Installer inventory.<br />As it gathers information about the configuration of your host computer, by default, Enterprise Manager assumes that you have one Oracle Universal Installer inventory on the host. Specifically, Enterprise Manager recognizes the inventory that Oracle Universal Installer uses when you run the Universal Installer on the host.<br />However, in some cases, you may have more than one inventory. For example, you may have worked with Oracle Support to clone your Oracle software installations. For those cases, you can use the following procedure to be sure that Enterprise Manager can track and manage the software information in multiple inventories on the same host.<br /><br /><span style="font-style: italic;">Caution:</span><br />Enabling support for multiple inventories is optional and available only for advanced users who are familiar with the Oracle Universal Installer inventory architecture and who have previously worked with multiple inventories on a managed host. This procedure is not required for hosts where normal installations have been performed.<br /><br />To set up Enterprise Manager so it can read multiple inventories on a host:<br /><br /><ol><li>Locate the <span style="font-family:courier new;">OUIinventories.add</span> file in the following directory <span style="font-family:courier new;">$ORACLE_HOME/<nodename>_<sid>/sysman/config</sid></nodename></span><br />The Management Agent state listed in this example represents an installation for Database Control. For more information about the Management Agent state to use for other installations, see Section 14.2.1, "<span style="font-family:courier new;">AGENT_HOME Versus AGENT_STATE Directories</span>" .</li><li>Open OUIinventories.add using a text editor.<br />Instructions within the file describe the format to use when identifying multiple inventories, as well other techniques for mapping Oracle Homes.</li><li>Carefully review the instructions within the file.</li><li>Add entries to the file for each additional inventory on the managed host.</li><li>Save your changes and close the file.</li></ol><br />During its next collection of host configuration information, Enterprise Manager will start gathering software configuration information from the inventories that you identified in the OUIinventories.add file, in addition to the default inventory that Enterprise Manager normally collects.<br />Alternatively, to see the data gathered from the additional inventories before the next regularly-scheduled collection, navigate to the Host home page in the Grid Control Console, click the Configuration tab, and click the Refresh Data icon next to the page timestamp.<br /><br /><span style="font-style: italic;">Note:</span><br />If there any irrecoverable problems during the collection of the default inventory (for example, if the inventory file or directory protections prevent Enterprise Manager from reading the inventory), inventories listed in <span style="font-family:courier new;">OUIinventories.add</span> file are also not collected.<br /><br />If the Enterprise Manager is able to read the default inventory, but there is a problem reading an additional inventory listed in the <span style="font-family:courier new;">OUIinventories.add</span> file, Enterprise Manager issues a collection warning for those inventories. However, Enterprise Manager does collect the configuration information for the other inventories.<br /><br /><br /><span style="font-style: italic;">Before the script :</span><br /><br /><ol><li>note on the "(for example, if the inventory file or directory protections prevent Enterprise Manager from reading the inventory)"<br />Be carrefull of this... The IAS guys that have installed some of our ias instances, have installed them with specific users/groups... and my user (part of the dba group) hasn't the rigths to read the ias files... and then my agent discovers nothing... :-(</li><li><span style="font-family:courier new;">$HOME/OUIinventories.add.orig</span> is the original copy of <span style="font-family:courier new;">$ORACLE_HOME/sysman/config/OUIinventories.add</span><br />Just to begin with a "clean" file each time we regenerate.... Even if original the file contains only comments... ;-)</li><li style="font-family: courier new;"><span style="font-size:85%;">iagt10g@uxhades2da > cat $HOME/oraInventories.txt<br />/opt/app/oracle/app/oradev8i/oraInventory<br />/opt/app/oracle/app/oradev9i/oraInventory<br />/opt/app/ias/oraInventory<br />/opt/app/ias/infra/oraInventory<br />/opt/app/ias/Inventory/oraInventoryForms<br />/opt/app/ias/Inventory/oraInventoryA916dev1012<br />/opt/app/ias/Inventory/oraInventoryA927dev1012<br />/opt/app/ias/Inventory/oraInventoryAsInfradev1012<br />/opt/app/ias/Inventory/oraInventoryas1012infra<br />/opt/app/ias/Inventory/oraInventoryas1012mid<br />/opt/app/ias/Inventory/oraInventoryrepca_101203<br />/opt/app/ias/Inventory/oraInventorya918dev101202<br />/opt/app/ias/Inventory/oraInventorya917dev101202<br />/opt/app/ias/Inventory/oraInventorya916dev101202<br />/opt/app/ias/Inventory/oraInventoryaCOMAD00D<br />/opt/app/ias/Inventory/oraInventorydevappn1013<br />/opt/app/ias/Inventory/oraInventoryA949dev101202<br /><br />iagt10g@uxhades1da > cat $HOME/oraInventories.txt<br />/opt/app/ias/iagt10g/oraInventory<br />/opt/oracle/app/iagt10g/oraInventory<br />/opt/oracle/app/iagtacc/oraInventory<br />/opt/oracle/app/iagtadm/oraInventory<br />/opt/oracle/app/iagtdev/oraInventory<br />/opt/oracle/app/oraacc10g/oraInventory<br />/opt/oracle/app/oraacc8i/oraInventory<br />/opt/oracle/app/oraacc9i/oraInventory<br />/opt/oracle/app/oraadm10g/oraInventory<br />/opt/oracle/app/oraadm8i/oraInventory<br />/opt/oracle/app/oraadm9i/oraInventory<br />/opt/oracle/app/oradev10g/oraInventory<br />/opt/oracle/app/oradev8i/oraInventory<br />/opt/oracle/app/oradev9i/oraInventory<br />/opt/oracle/app/oraedu8i/oraInventory<br />/opt/oracle/app/oraedu9i/oraInventory<br />/opt/oracle/app/oratst8i/oraInventory</span></li></ol><br /><br /><span style="font-family:courier new;"></span><blockquote><span style="font-family:courier new;">###############################################################</span><br /><span style="font-family:courier new;"># Christian Clemmen - 2005/07 - v1.0 - creation</span><br /><span style="font-family:courier new;"># info@infor-conseils.be</span><br /><span style="font-family:courier new;">###############################################################</span><br /><span style="font-family:courier new;">#!/bin/ksh</span><br /><br /><span style="font-family:courier new;">cp $HOME/OUIinventories.add.orig $ORACLE_HOME/sysman/config/OUIinventories.add</span><br /><br /><span style="font-family:courier new;">for inv in `cat $HOME/oraInventories.txt`</span><br /><span style="font-family:courier new;">do</span><br /><span style="font-family:courier new;"> loc=$HOME/oraInst.`echo $inv | cut -d/ -f6`.loc </span><br /><span style="font-family:courier new;"> echo "inventory_loc=$inv" > $loc</span><br /><span style="font-family:courier new;"> echo "inst_group=dba" >> $loc</span><br /><span style="font-family:courier new;"> echo "inventory: $loc" >> $ORACLE_HOME/sysman/config/OUIinventories.add </span><br /><span style="font-family:courier new;">done</span></blockquote><span style="font-family:courier new;"></span><br /><br />In the $HOME, we have now:<br /><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 68 May 23 08:16 oraInst.oraacc10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 66 May 23 08:16 oraInst.iagtdev.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 66 May 23 08:16 oraInst.iagtadm.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 66 May 23 08:16 oraInst.iagtacc.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 66 May 23 08:16 oraInst.iagt10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oratst8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraedu9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraedu8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oradev9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oradev8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 68 May 23 08:16 oraInst.oradev10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraadm9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraadm8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 68 May 23 08:16 oraInst.oraadm10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraacc9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">-rw-r--r-- 1 iagt10g dba 67 May 23 08:16 oraInst.oraacc8i.loc</span><br /><br />Each of them contains something like :<br /><span style="font-family:courier new;font-size:85%;">iagt10g@uxhades1da > cat oraInst.oraacc8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory_loc=/opt/oracle/app/oraacc8i/oraInventory</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inst_group=dba</span><br /><br />Content of <span style="font-family:courier new;">$ORACLE_HOME/sysman/config/OUIinventories.add </span>after script:<br /><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.iagt10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.iagtacc.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.iagtadm.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.iagtdev.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraacc10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraacc8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraacc9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraadm10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraadm8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraadm9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oradev10g.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oradev8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oradev9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraedu8i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oraedu9i.loc</span><span style="font-size:85%;"><br /></span><span style="font-family:courier new;font-size:85%;">inventory: /home/iagt10g/oraInst.oratst8i.loc</span><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-53024826371253622862007-10-04T20:19:00.000+02:002007-10-04T20:25:57.188+02:00Mount ISO - Virtual cdromThere are excellent software packages that allow users to mount ISO files as virtual CD-ROMs.<br /><br />Microsoft has a free, 60kb program that does it! Of course, it is not supported... and it's not as friendly as the software listed above; however, it works and it's free.<br /><br />You can download it <a href="http://http://download.microsoft.com/download/7/b/6/7b6abd84-7841-4978-96f5-bd58df02efa2/winxpvirtualcdcontrolpanel_21.exe">here</a><br /><br /><br />Here's the readme:<br /><blockquote></blockquote><blockquote></blockquote><blockquote>Readme for Virtual CD-ROM Control Panel v2.0.1.1<br /><br />THIS TOOL IS UNSUPPORTED BY MICROSOFT PRODUCT SUPPORT SERVICES<br /><br /><br />System Requirements<br />===================<br />- Windows XP Home or Windows XP Professional<br /><br />Installation instructions<br />=========================<br />1. Copy VCdRom.sys to your %systemroot%\system32\drivers folder. <br />2. Execute VCdControlTool.exe<br />3. Click "Driver control"<br />4. If the "Install Driver" button is available, click it. Navigate to the %systemroot%\system32\drivers folder, select VCdRom.sys, and click Open.<br />5. Click "Start"<br />6. Click OK<br />7. Click "Add Drive" to add a drive to the drive list. Ensure that the drive added is not a local drive. If it is, continue to click "Add Drive" until an unused drive letter is available.<br />8. Select an unused drive letter from the drive list and click "Mount".<br />9. Navigate to the image file, select it, and click "OK". UNC naming conventions should not be used, however mapped network drives should be OK.<br /><br />You may now use the drive letter as if it were a local CD-ROM device. When you are finished you may unmount, stop, and remove the driver from memory using the driver control.</blockquote><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-41660438658487137292007-04-19T20:39:00.000+02:002007-04-19T20:46:13.820+02:00Bug 5458753 SQL may execute in wrong schemaI found this issue this afternoon....<br />Waaw... completely crazy!!!!<br /><br /><br />This issue is very very rare in 10.1 but can occur<br />much more easily in 10.2.0.2 .<br /><br />If different schemas have tables / views etc.. with identical names<br />and sessions from different schemas execute IDENTICAL SQL<br />statements then it is possible for such SQL sentences to get<br />executed against the wrong schema objects. This can result<br />in:<br /><ul><li> Wrong results from SELECT SQL</li><li> Logical data corruption for DML SQL</li><li> Unexpected errors such as ORA-2291 / ORA-1 from DML</li><li> Parse errors if the underlying table definition differs.</li></ul> (eg: ORA-904 etc..)<br /><br />eg:<br /> Consider an application with seperate sessions executing<br /> "<span style="font-family: courier new;">select mycol from mytable where key=:B1</span>" as user A and user B<br /> where both users have a table called "<span style="font-family: courier new;">MYTABLE</span>".<br /> In this case it is possible for user A to end up executing the<br /> SQL against <span style="font-family: courier new;">B.MYTABLE i</span>nstead of against <span style="font-family: courier new;">A.MYTABLE</span>.<br /><br />Workaround:<br /> There is no simple workaround which can avoid this fully.<br /> The issue can be avoided by prefixing object names with the schema name.<br /> eg: In the above example change the SQL to use<br /> "<span style="font-family: courier new;">select mycol from A.mytable</span>" for user A and<br /> "<span style="font-family: courier new;">select mycol from B.mytable</span>" for user B.<br /><br /> If SQL cannot be changed then it can help to reduce shared pool<br /> load (as the problem occurs when cursors are reloaded having<br /> been aged out / invalidated). Using <span style="font-family: courier new;">DBMS_SHARED_POOL.KEEP</span> for<br /> affected cursors can also help.<br /><br /><br /><br />More info in Metalink note: <strong>392673.1</strong><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1146732596893608132006-05-04T10:49:00.001+02:002006-05-04T10:49:56.893+02:00Install Grid Control plug-in for Microsoft SQL-ServerMust be written<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1146732564764649412006-05-04T10:49:00.000+02:002006-05-04T10:49:24.763+02:00Oracle Connection Manager 10gMust be written<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1146732508076046332006-05-04T10:47:00.000+02:002006-05-04T10:48:28.130+02:00PLS-00302: component 'SET_NO_OUTLINES' must be declared with imp/expmust be written...<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1146227125152398252006-04-28T14:17:00.000+02:002006-04-28T14:38:43.946+02:00Invalid public synonyms on Oracle 10gDon't know why but sometimes, some public synonyms on the<span style="font-family:courier new;"> dba_xxxx</span> views become invalid...<br />I write a little script to regenerate them:<br /><br /><span style="font-family:courier new;">/******************************************</span><br /><span style="font-family:courier new;">2006-04-18 - V1.0 - Creation of the script</span><br /><span style="font-family:courier new;">(c) INFOR-Conseils</span><br /><span style="font-family:Courier New;">oracle _at_ infor-conseils.be</span><br /><span style="font-family:courier new;">Regenerate invalid public synonyms</span><br /><span style="font-family:courier new;">******************************************/</span><br /><span style="font-family:courier new;">prompt system@&&database</span><br /><span style="font-family:courier new;">conn system@&&database</span><br /><span style="font-family:courier new;"></span><br /><span style="font-family:courier new;">set pages 0<br />set feed off<br />set linesize 1000<br />set trimsp on<br />spool <span style="color:#333399;">_your_disk_<disk></span>\recrpubsyn.sql<br />select 'CREATE OR REPLACE PUBLIC SYNONYM 'object_name' for 'object_name';' from dba_objects where status = 'INVALID'and object_type = 'SYNONYM' and owner = 'PUBLIC';<br />spool off<br />@@<span style="color:#333399;">_your_disk_<disk></span>\recrpubsyn.sql<br />host <span style="color:#333399;">_the_remove_command_ _your_disk_<remove><disk></span>\recrpubsyn.sql</span><br /><span style="font-family:courier new;">exit;</span><br /><br /><br /><br /><span style="font-family:courier new;"><disk></span><span style="font-family:courier new;color:#333399;">_your_disk_</span> must be replaced by a path in your OS<br />e.g <span style="font-family:courier new;">d:\</span> on Windows or <span style="font-family:courier new;">/home/oracle</span> on Linux/Unix.<br />The <span style="color:#333399;">_the_remove_command_</span> <span style="font-family:courier new;"><remove></span>must be replaced by <span style="font-family:courier new;">del</span> on Windows and by <span style="font-family:courier new;">rm</span> on Linux/Unix<div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1146038340887020292006-04-26T09:02:00.000+02:002006-04-26T10:33:02.063+02:00ORA-29531: no method get_crlf in class oracle/plsql/net/TCPConnection<p>When trying to send a mail with the oracle provided package <span style="font-family:courier new;">UTL_SMTP</span> you can get the error <span style="font-family:courier new;">ORA-29531: no method get_crlf in class oracle/plsql/net/TCPConnection:</span></p><ul><li><span style="font-family:courier new;font-size:100%;">Error: ORA-29531: no method get_crlf in class oracle/plsql/net/TCPConnection</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: </span><span style="font-family:courier new;font-size:100%;">at "SYS.UTL_TCP", line 678</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: at "SYS.UTL_TCP", line 671</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: at "SYS.UTL_SMTP", line 99</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: at "SYS.UTL_SMTP", line 121</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: at "S716.S724_PA_UTIL", line 2470</span></li><li><span style="font-family:courier new;font-size:100%;">ORA-06512: at line 2</span></li></ul><span style="font-size:100%;"></span><br /><span style="font-size:100%;"></span><br /><span style="font-size:100%;">Metalink Note 160798.1 says:</span><br /><p><span style="font-size:100%;"><strong>UTL_SMTP Fails with 'ORA-29531 no Method get_crlf' After Applying Patchset 8.1.7.2 or Above</strong></span></p><ul><li><span style="font-size:100%;">fact: Oracle Server - Enterprise Edition 8.1.7</span></li><li><span style="font-size:100%;">symptom: Error when using UTL_SMTP</span></li><li><span style="font-size:100%;">symptom: ORA-29531: no method get_crlf in class oracle/plsql/net/TCPConnection</span></li><li><span style="font-size:100%;">symptom: ORA-6512: at "SYS.UTL_TCP"</span></li><li><span style="font-size:100%;">symptom: ORA-6512: at "SYS.UTL_SMTP"</span></li><li><span style="font-size:100%;">change: patchset 8.1.7.2 or above applied</span></li><li><span style="font-size:100%;">cause: The steps in the patchset readme for 8172+ does not include re-running initplsj or manually loading this jar.</span></li><li><span style="font-size:100%;">Original problem is caused by Bug 1721293 UTL_SMTP FAILS WITH ORA-29531 .</span></li></ul><p>fix:</p><p>1. connect as SYS<br />2. run <span style="font-family:courier new;">$ORACLE_HOME/rdbms/admin/initplsj.sql</p><p></span> </p><p>Results of the script:<br /><span style="font-family:courier new;">SQL*Plus: Release 8.1.7.0.0 - Production on Wed Apr 26 10:15:39 2006<br />(c) Copyright 2000 Oracle Corporation. All rights reserved.<br /><br />Connected to:<br />Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production<br />With the Partitioning option<br />JServer Release 8.1.7.4.0 - 64bit Production<br />SQL> @$ORACLE_HOME/rdbms/admin/initplsj.sql<br />Call completed.<br />Call completed.<br />SQL> exit </span><br /><span style="font-size:0;"></span><br />And now all is running succesfully :-)<span style="font-family:courier new;"><br /></span><span style="font-family:courier new;"><br /><br /></p></span><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0tag:blogger.com,1999:blog-16045679.post-1145963795165426632006-04-25T13:12:00.000+02:002006-04-25T13:43:27.716+02:00La dernière mise à jour de Microsoft renferme bien des surprises!Le patch estampillé MS06-015 semble causer des soucis à certaines personnes. Corrigeant une faille dans l’Explorer de Windows, le patch provoque plusieurs problèmes dont :<br /><br /><ul><li> L’impossibilité d’accéder à certains dossiers particuliers comme « Mes Documents » ou « Mes Images »</li><li> Un arrêt du fonctionnement des applications Office lorsque l’on essaye d’ouvrir ou enregistrer un fichier dans « Mes Documents »</li><li> L’impossibilité d’ouvrir un fichier Office depuis « Mes Documents »</li><li> Un arrêt de certains logiciels lorsque l’on utilise la fonction Fichier -> Ouvrir</li><li> L’impossibilité d’afficher une page dans Internet Explorer après avoir écrit dans la barre d’adresses</li><li> Utiliser la fonction du menu contextuel « Envoyer vers » n’a aucun effet</li><li> La touche « + » dans l’explorateur Windows n’a aucun effet</li><li> Certaines applications cessent de fonctionner lorsque l’on ouvre ou enregistre des fichiers dans « Mes Documents »</li></ul><br />Ces problèmes peuvent être causés (ce n’est pas automatique) par un nouvel exécutable nommé VERCLSID.EXE qui doit valider les extensions du shell avant leur mise en marche. Sur certaines machines, dans certaines conditions, cet exécutable cesse en fait de répondre et provoque, par effet boule de neige, un arrêt du fonctionnement de certaines applications, notamment :<br /><br /><ul><li> Le logiciel Share-to-Web de HP : le service Hpgs2wnd.exe se retrouve notamment avec le logiciel HP PhotoSmart, les imprimantes DeskJet qui incluent un lecteur de cartes, les scanners HP, certains graveurs de CD et les appareils photo de la marque.</li><li> Kerio Personal Firewall qui peut empêcher VERCLSID.EXE de fonctionner en essayant de marquer le fichier lorsqu’il est appelé.</li></ul><br />Ce problème se retrouve sur toutes les versions de Windows depuis 2000 (XP et 2003 Server) et peut être réglé pour les deux applications nommées ci-dessus.<br /><br /><br />Pour HP Share-to-Web :<br /><ol><li>Lancer l’éditeur de registre (regedit)</li><li>Se rendre à la clé : <span style="font-family:courier new;">HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached</span></li><li>Faire un clic droit sur la clé « <span style="font-family:courier new;">Cached</span>» et cliquer sur Nouveau -> Valeur DWord et la nommer:<span style="font-family:courier new;"> {A4DF5659-0801-4A60-9607-1C48695EFDA9} {000214E6-0000-0000-C000-000000000046} 0x401</span></li><li>Donner à cette valeur le chiffre 1</li><li>Fermer l’éditeur puis relancer la machine ou tuer le processus VERCLSID.EXE dans le gestionnaire des tâches</li></ol><br />Pour le firewall Kerio, il faut configurer le logiciel pour que VERCLSID.EXE puisse s’exécuter sans être contrôlé.<br /><br />Source <a href="http://support.microsoft.com/default.aspx/kb/918165?">Microsoft</a><br />Article original <a href="http://www.pcinpact.com/actu/news/28144-Une-rustine-a-problemes-chez-Microsoft.htm">ici</a><div class="blogger-post-footer">See also http://www.infor-conseils.be and http://www.infor-conseils.eu</div>Christian Clemmen, Oracle Guruhttp://www.blogger.com/profile/12394759738816821566noreply@blogger.com0