Menu

19 Nisan 2011 Salı

Oracle Alert Log

Oracle'ın alert.log kronolojik mesajları ve günlük veritabanı işlemi kaynaklanan hataları kaydeder. Ayrıca, Trace files ve dump files incelemek icin vardir.

Alert log icinde asagidaki mesajlar vardir.
  • startup ve shutdown mesajlari
  • Operator konsole mesajlar
  • Tracle files hata nedenleri
  • Database uzerinde CREATE, ALTER ve DROP SQL ifadelerinin tablespce uzerinde kullanilmasi ve rollback segmentlerde.
  • ORA-00600 : Internal(dahili) hatalari
  • ORA-01578 errors (block corruption) 
  • ORA-00060 errors (deadlocks)  
Alert log  text formatindadir ve isteniler bir editor ile acilabilir. BACKGROUND_DUMP_DEST parametersi ile directory`si bulunabilir.
select value from v$parameter where name = 'background_dump_dest';
Eger background_dump_dest belirtilmemisse, oracle alert logu, 
$ORACLE_HOME/diag/RDBMS/dbname/ORACLE_SID/trace directory`i icine yazar.
 
 

18 Nisan 2011 Pazartesi

CETURK AZERBAYCAN, ORALCE KONFERANS

 




  Bugüne kadar Türkiye'de çok farklý konu ve teknoloji ile ilgili yaptýðý ücretsiz etkinliklerle biliþim sektörünün geliþmesine katkýda bulunan CETURK, Türkiye'deki biliþim topluluklarý arasýnda bir ilke daha imza atarak Azerbaycan'da   gerçekleþtireceði Oracle Konferansý ile  yurtdýþý etkinliklerine  baþlýyor. Azerbaycan Oracle Konferansý 7 Mayýs 2001 tarihinde Azerbaycan Teknik Üniversitesi'nde alanýnda uzman konuþmacýlarýn katýlýmýyla ücretsiz olarak gerçekleþecektir.

Konferansa Türkiye'den Talip Hakan Öztürk, Azerbaycan'dan Kamran Agayev, Ramin Orucov ve Teymur Hacýyev katýlacaktýr.

 

  Ayrýntýlý bilgi için týklayýnýz.

 
Etkinliðe kayýt için týklayýnýz.

15 Nisan 2011 Cuma

Windows 7 Yeni Disk yaratma

http://www.sevenforums.com/tutorials/2674-partition-volume-create-new.html

14 Nisan 2011 Perşembe

ORA-00205: error in identifying controlfile, check alert log for more info

SQL>  conn / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.

Total System Global Area  839282688 bytes
Fixed Size                  2217992 bytes
Variable Size             494929912 bytes
Database Buffers          339738624 bytes
Redo Buffers                2396160 bytes
ORA-00205: error in identifying control file, check alert log for more info

Eger sizde benim gibi yukaridaki hatayi aldiysaniz. sorun ORACLE_SID `nin ASM olmamasidir.

Çözüm; Oracle SID'sini ASM'ye çevirmek..

sqlplus / as sysdba
SQL>shutdown immediate;
exit
2.export ORACLE_SID=+ASM
SQL> startup

yada

SQL> startup force
ORACLE instance started.

Total System Global Area  839282688 bytes
Fixed Size                  2217992 bytes
Variable Size             494929912 bytes
Database Buffers          339738624 bytes
Redo Buffers                2396160 bytes
Database mounted.
Database opened.
SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE
SQL>

Re: ORA-01102: cannot mount database in EXCLUSIVE mode

Faced the same issue just now... Here's what you do:
First at command prompt check:

ps -eaf | grep smon

You would definitely find 2 entries for the current database...

Export ORACLE_HOME,ORACLE_SID, login to SQL and type:

shutdown immediate

Then logout of sql and again grep for smon... Kill that particular process using kill -9

Then login to SQL and type:

startup

The database would surely startup now.. Try and let us know!

Oracle Initialization Parameters - Ve aciklamalari

  • O7_DICTIONARY_ACCESSIBILITY :  Objeler uzerindeki bir system yetkidir, default degeri false`dir.  Eger true yapilirisa, yetkiler verilen user, her schema`daki table`lar uzerinde sorgu yapabilir.
  • ACTIVE_INSTANCE_COUNT : Bu parameter yanlizca cluster sistemlerde icin kullanilir ve aktif instance sayisini verir.
  • ARCHIVE_LAG_TARGET : Stand by da maximum kaydedilebilir redos sayisi.
  • ASM_DISKGROUPS : ASM instance`de mount olunmus asm disk grublarini verir. Ve ALTER DISKGROUP ALL MOUNT statement`indeki tum degisiklikler bu parametereye yansitilir.
  • ASM_DISKSTRING : Bu parameter belirtilen ASM diskgrouplarin discovery olmasi, ve virgulle ayirarak onlari listemeye yarar, bir diskgroup iki defa discovery olunmaz.
  • ASM_POWER_LIMIT : Bu parametre disklerin defult rebalancing powerini verir. Default degeri 1`dir ve 11`e kadar cikabilir. 0 olursa rebalancing kapali demektir. Bu parametrenin degeri arttikca rebalancing islemi daha hizli bi sekilde tamamlanir, ama I/O cok yuksek olur.
  • ASM_PREFFERED_READ_FAILURE_GROUPS : İleride olası durumlar için tanımladığımız failure, yani başarısızlık gruplarını ifade eden parametredir. Amacı arttırılmış kopyalama ve daha fazla sağlamlık için kullanılacak disk'lerin gruplanmasıdır. Bu parametre yanliz Cluster sistemlerde kullanilir.
  • AUDIT_FILE_DEST : AUDIT_FILE_DEST parametresi audit kayıtlarının nerede tutulacağının set edildiği parametredir.
  • AUDIT_SYS_OPERATION : SYS userının auditlenip auditlenmemesi ile ilgili, eğer SYS userının sessionlarıda auditlenecekse  AUDIT_SYS_OPERATIONS parametresi TRUE olarak set edilmelidir.
  • AUDIT_SYSLOG_LEVEL : Bu parametre sadece Unix ortamlarda kullanılmaktadır. Bu parametre manuel olarak initSID.ora dosyasına eklenilerek set edilebilir. İki farklı değer alabilir.
  • AUDIT_TRIAL :  AUDIT_TRIAL`in acik veya kapali olmasi icin kullanilan parametredir.
    NONEAuditing disable anlamına  gelir.

    Audit_trail parametresini DB olarak set ettiğimizde belirlediğimiz audit kriterlerine uygun sessionlar geldikçe bu tabloda dolmaya başlayacaktır.

    select sessionid, userid, userhost, terminal, actionfrom sys.aud$

    SESSIONID                   USERID    USERHOST                                          TERMINAL                   ACTION#
    14708                                KAMIL      WORKGROUP\KHOME         KHOME                         101




  •  
     

Virtual Box Shared Folders

Host :  Windows 7, guest Oracle enterprise linux,

Asagidaki kod yardimi ile, windows ve linux arasinda dosyalari rahatlikla paylasabiliriz.

# mkdir /tmp/share
# sudo mount -t vboxsf VBox_shared /tmp/share/

13 Nisan 2011 Çarşamba

ORA-00845: MEMORY_TARGET not supported on this system

Yukaridaki hatayi aldigimizda, asagidaki degisiklileri yaparsak sorun cozulmus olur.
# umount tmpfs
# mount -t tmpfs shmfs -o size=1500m /dev/shm
# df -h /dev/shm
Filesystem            Size  Used Avail Use% Mounted on
shmfs                 1.5G  285M  1.2G  19% /dev/shm

Oracle 11gR2 Default Listener - Grid Infrastructure home

Yukaridaki hatayi aldigimizda yapmamiz gereken, grid ile beraber yuklenen listeneri silip yeniden eklemek

How to resolve Could not validate ASMSNMP password due to following error- "ORA-01031: insufficient privileges"

>Oracle 11g R2 grid

goto grid home /bin
[grid@node1 bin]$ orapwd file=/u01/app/11.2.0/grid/dbs/orapw+ASM password=oracle_4U

[grid@node1 dbs]$ scp orapw+ASM Node2:/u01/app/11.2.0/grid/dbs/

[grid@node1 dbs]$ scp orapw+ASM Node3:/u01/app/11.2.0/grid/dbs/

Login in to Oracle database as

export ORACLE_SID=+ASM1

export ORACLE_HOME=/u01/app/11.2.0/grid

[grid@node1 bin]$ sqlplus / as sysasm

SQL>create user asmsnmp identified by oracle_4U;

SQL> grant sysdba to asmsnmp;

12 Nisan 2011 Salı

CRS-4013: This command is not supported in a single-node configuration.

In 11gR2 RAC configuration, after planned shutdown I wanted to start the Grid infrastructure.  So I issued crsctl start crs command, which resulted in following error

# crsctl start crs
CRS-4013: This command is not supported in a single-node configuration.
CRS-4000: Command Start failed, or completed with errors.

Being a development cluster, initially I thought someone have messed up with the RAC configuration by switching OFF the RAC.  So to check the current configuration I issued following commands.
 
cd $GRID_HOME/rdbms/lib
ar -t libknlopt.a | grep -c kcsm.o
(return 0 if RAC is disabled or a number >0 if enabled)

This command returned value 1.  Which means RAC was ON.
There was nothing obvious in the log, which points to the cause of this error. Also CRS was running on other node.
Tried with few more things

# crsctl start resource -all
# /etc/init.d/ohasd start

But still could not start the CRS.
Finally deconfigured the CRS
 
# /oragrid/crs/install rootcrs.pl -deconfig -force

Then again configured it
 
# /oragrid/root.sh

Last approach worked, but I could not ascertain the root cause of this error.

PRCR-1001 : Resource ora.asm does not exist

> srvctl status asm
    PRCR-1001 : Resource ora.asm does not exist

Sizde Benim gibi yukaridaki hata ile karsilastiysaniz, asagidaki adimalari takip ederek sorun cozebiliriz;

> export ORACLE_SID=+ASM

> srvctl add asm -p $ORACLE_HOME/dbs/init${ORACLE_SID}.ora

> srvctl status asm
   ASM is not running.
 
> srvctl start asm
or
> sqlplus '/ as sysasm'
startup 
  
 Asagidaki parametreleri kullanarak ASM hakkinda daha detayli bilgiler gorebilirsiniz.
 
> crsctl status resource ora.asm
NAME=ora.asm
TYPE=ora.asm.type
TARGET=ONLINE
STATE=ONLINE on ertugrula 
 

11 Nisan 2011 Pazartesi

Oracle 11g R2 grid ve ASM kurulumu

Bu Makale Oracle 11gR2 Otomatik Depolama Yönetimi için çeşitli önemli geliştirmeler içeren bir yazı dizisidir.

Hikaye içinde ASM, biz veritabanı sürümü olarak VMWARE, Oracle'ın 11gR2 grid olarak Oracle Linux 5 kullanacağız.

 Gerekli Malzemelerimiz..
Oncelikle Grid infra. kurulumuna gecmeden once ASM`i yukleyelim..
Birde ASM kurulumu icin bize 3 tane paket lazim, Oracle download sitesindeki download tabından "Linux Drivers for Automatic Storage Management" seçmeniz gerekir. Herbir Linux versiyonu için ayrı ayrı ASMLIB RMP paketleri vardır.
Benim kullanacagim

  • oracleasmlib-2.0 - Oracle ASM kütüphanesi
  • oracleasm-support-2.0 - ASMLib yönetimi için gerekli araçlar
  • oracleasm - Oracle ASM kütüphanesi için kernel modülü
 ASM disklerin kurulum icin, root  kullanicisi ile asagidaki gibi kurabiliriz..

          # rpm -Uvh oracleasm-support-2.1.3-1.el4.x86_64.rpm
          # rpm -Uvh oracleasmlib-2.0.4-1.el4.x86_64.rpm
          # rpm -Uvh oracleasm-2.6.9-55.0.12.ELsmp-2.0.3-1.x86_64.rpm

 Daha sonra asm yapilandirilmasi icin, asagidaki komutu griyoruz ve gelen secenekleri, oracle, oinstall, y, y diyerek yapilandirmayi tamamliyoruz..

     # oracleasm configure –I
        Default user to own the driver interface oracle
        Default group to own the driver interface oinstall
        Start Oracle Automatic Storage Management Library driver on boot (y/n): y
        Fix permissions of Oracle ASM disks on boot? (y/n): y

 Aşağıdaki komut ile oracleasm kernel modülü yüklenir:
       # /usr/sbin/oracleasm init 

Paylaşımlı depolama alanındaki fiziksel disklerin formatlanma işleminden sonra ilgili fiziksel disklerde ASM disklerini aşağıdaki gibi oluşturuyoruz. 

Not : VMWare ile Disklerin yaratilmasini http://ertugrulaslan.blogspot.com/2011/04/vmware-ile-asm-disk-yaratmak.html, bu makalemde bulabilirsiniz.

               # oracleasm createdisk data1 /dev/sdb1
               # oracleasm createdisk data2 /dev/sdc1
              # oracleasm createdisk data3 /dev/sdd1

Yukardaki data1 den data3 ya kadar olan ASM diskleri veritabanı veri dosyalarını, redo log dosyalarını ve kontrol dosyalarını saklayacak.
              
Eğer bir diski ASM diski olarak işaretlemekten vazgeçerseniz aşağıdaki komutla bu işlemi tamamlayabilirsiniz.

              # /usr/sbin/oracleasm deletedisk //delete disk
          
 ASM disklerini olusturdukdan sonra, asagidaki gibi, scan edebilir ve listeleyebiliriz.
             #/usr/sbin/oracleasm scandisks    // Scan etmek icin
            #/usr/sbin/oracleasm listdisks    // Listelemek icin etmek icin 

Buraya kadar, ASM disklerin kurulumu ve yapilandirilmasi tamamlandi, bundan sonra grid infras. kurulumuna gecebiliriz..

Oncelikle bize gerekli olan paketleri yuklememiz gerekiyor.. Bu paketleri, CD icinde bulabilirsiniz..

cd /media/Enter... /Server/
rpm -Uvh binutils-2.*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh compat-libstdc++-33*.i386.rpm
rpm -Uvh elfutils-libelf*
rpm -Uvh gcc-4.*
rpm -Uvh gcc-c++-4.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh glibc-devel-2.*
rpm -Uvh glibc-headers-2.*
rpm -Uvh ksh*
rpm -Uvh libaio-0.*
rpm -Uvh libaio-devel-0.*
rpm -Uvh libgomp-4.*
rpm -Uvh libgcc-4.*
rpm -Uvh libstdc++-4.*
rpm -Uvh libstdc++-devel-4.*
rpm -Uvh make-3.*
rpm -Uvh sysstat-7.*
rpm -Uvh unixODBC-2.*
rpm -Uvh unixODBC-devel-2.*
rpm -Uvh numactl-devel-2*
 
- Daha sonra asagidaki Oracle Grid ve Database Server icin gerekli linux ayarlamalarini yapiyoruz.
  
# vi /etc/sysctl.conf
fs.suid_dumpable = 1
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
 
/etc/security/limits.conf    /// icine 
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    stack   10240 

10 Nisan 2011 Pazar

Oracle 11g Clusterware ile Kullanilabilen Araclar

 Asagida Oracle 11g Clusterware  RAC ile Kullanabilecegimiz araclari ve onlarin ne ise yaradiklari ve nasil kullanilabildiklerini orneklerle gostermeye calisacam..
  • Oracle Universal Installer (OUI) –Oracle grid mimarisi yazılımını kurmaya yarayan grafiksel arayüzlü sihirbaz(Oracle Clusterware and Oracle ASM den oluşmaktadır)
  • Cluster Verification Utility (CVU) – Kümeleme ortamını doğrulamak için kullanılan komut satırı aracıdır. Kurulum öncesi olduğu kadar kurulum sonrasında kümeleme ortamının kontrol edilmesinde kullanılmaktadır.
  • Oracle Enterprise Manager(OEM) –  Tekli instance veya Oracle RAC ortamının yönetilmesini sağlayan web tabanlı grafiksel arayüzlü araçtır.
  • Server Control (SRVCTL) - Oracle Cluster Registry (OCR) içinde belirtilen kaynakları yönetmek maksadıyla kullanılan komut satırı aracıdır.
  • Cluster Ready Services Control (CRSCTL)- Oracle Clusterware bünyesindeki servisleri yönetmek için kullanılan komut satırı aracıdır. Bu servisler Cluster Synchronization Services (CSS), Cluster-Ready Services (CRS), and Event Manager (EVM) dir.
  • Database Configuration Assistant (DBCA) Oracle veritabanı kurmak ve yapılandırmak için kullanılan grafiksel arayüzlü araçtır.
  • Oracle Automatic Storage Management Configuration Assistant (ASMCA) Oracle ASM instanceları, disk gruplarını ve volume ları kurmak ve yapılandırmak için kullanılır. Hem grafiksel arayüzlü hemde komut satırından kullanılabilir.
  • Oracle Automatic Storage Management Command Line utility (ASMCMD)— Oracle ASM instanceları ve Oracle ASM disk grupları yönetmek, disk grupları için dosya erişim kontrolü yapmak ve Oracle ASM disk grupları içinde dizin ve dosyalarının yönetimini yapmak için kullanılan komut satırı aracıdır.
  • Listener Control (LSNRCTL)—Listener yönetiminde kullanılan komut satırı aracıdır.

9 Nisan 2011 Cumartesi

java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 ORA-12705: invalid or unknown NLS parameter value specified

java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: invalid or unknown NLS parameter value specified
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java :112)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:283)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java :278)
        at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:790)
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362)
        at oracle.jdbc.driver.PhysicalConnection .(PhysicalConnection.java:420)
Error en la conexion

Eger Oracle XE database`e baglanirkenyukaridaki hatayi aliyorsuk, sorun, WIndows`un dil ve region ayarlarindandir.

Cozum :
> Control Panel-> Region and Language - > Buradan formati, English(United State ) yapip bilgisayir restart verenden sonra duzelecektir..

7 Nisan 2011 Perşembe

ORA-15027: active use of diskgroup “DATA” precludes its dismount

ASM diskleri silerken bu hatayialirsak yapmamiz gerekenler, diskgroup force command ile dismount ettikden sonra grubu ve icindekileri silebiliriz.

                   SQL> drop diskgroup data including contents;
                         drop diskgroup data including contents
                          *
                         ERROR at line 1:
                         ORA-15039: diskgroup not dropped
                         ORA-15027: active use of diskgroup "DATA" precludes its dismount

asm_clientlere bakiyoruz,

                        SQL> select * from v$asm_client;
                                  no rows selected

kapali gorunuyor, simdi asagidaki adimlari uygularsak sorun cozulecektir.

                        SQL> alter diskgroup data dismount force;
                        SQL> drop diskgroup data force including contents;
                        Diskgroup dropped. 


bash: ./runInstaller: Permission denied

[oracle@ertugrula grid]$ ./runInstaller
bash: ./runInstaller: Permission denied

Eger sizde benim gibi yukaridaki hata ile karsilastiysaniz yapmamiz gereken, permissionlar vermekte asagida oldugu gibi

[oracle@ertugrula grid]$ chmod u+x runInstaller
[oracle@ertugrula grid]$ chmod u+x ./install/.oui
[oracle@ertugrula grid]$ chmod u+x ./install/unzip

Bu kadar :)

5 Nisan 2011 Salı

How to connect to asmcmd

[oracle@ertugrula ~] asmcmd
Connected to an idle instance.
ASMCMD>;

Ozaman   

[oracle@ertugrula ~] export ORACLE_HOME=/u01/app/oracle/product/11.2.0/grid
[oracle@ertugrula ~] export PATH=/u01/app/oracle/product/11.2.0/grid/bin:$PATH

And now change the ORACLE_SID and run asmcmd again
   
[oracle@ertugrula ~] export ORACLE_SID=+ASM

[oracle@ertugrula ~] asmcmd -p

ASMCMD [+] >

1 Nisan 2011 Cuma

Oracle`i Sistemden Elle silmek

Windows

Asagidaki adimlari kullanarak oracle`i windows isletim sisteminden silebiliriz.
  • Uninstall Oracle Universal Installer (OUI).
  • Run regedit.exe ve sil HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE key. Ve bunun icinde Oracle ile ilgili ne varsa butun urunleri silelim 
  • Delete HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Ora*
  • Restart Windows.
  • Delete "C:\Oracle" klasoru, veya sizin ORACLE_BASE.
  • Delete "C:\Program Files\Oracle
  • Temizleyin "c:\temp"
  • Temizleyin cop kutusunu.

UNIX

Uninstalling all products from UNIX is a lot more consistent. If you do need to resort to a manual uninstall you should do something like:
  • Uninstall all Oracle components using the Oracle Universal Installer (OUI).
  • Stop any outstanding processes using the appropriate utilities:
    # oemctl stop oms user/password
    # agentctl stop
    # lsnrctl stop
    Alternatively you can kill them using the kill -9 pid command as the root user.
  • Delete the files and directories below the $ORACLE_HOME:
    # cd $ORACLE_HOME
    # rm -Rf *
  • With the exception of the product directory, delete directories below the $ORACLE_BASE.
    # cd $ORACLE_BASE
    # rm -Rf admin doc jre o*
  • Delete the /etc/oratab file. If using 9iAS delete the /etc/emtab file also.
    # rm /etc/oratab /etc/emtab