[ MarkoBalkan @ 25.08.2012. 07:57 ] @
platforma: debian 6.05 stable
oracle client: instantbasicclient
instaliran sql plus i client devel.

oracle home dir je postavljen na: /usr/lib/oracle/11.2/client64

u client64 kreirana je mapa network, unutar mape network kreirana je mapa admin u kojoj su smještene ora datoteke.

Code:

tnsnames izgleda ovako:

ORCL11 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.x.y)(PORT = 1521))
    (CONNECT_DATA =
      (SERVICE_NAME = orcl11)
    )
  )

sqlnet.ora izgleda ovako


SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)




kad se probam spojiti sam sqlplusom, dovivam ovu grešku:

ERROR:
ORA-12162: TNS:net service name is incorrectly specified
[ Miroslav Strugarevic @ 25.08.2012. 11:47 ] @
Da li si setovao ORACLE_HOME promenljivu za oracle korisnika?

[Ovu poruku je menjao Miroslav Strugarevic dana 25.08.2012. u 13:04 GMT+1]
[ Miroslav Strugarevic @ 25.08.2012. 12:03 ] @
Takodje tnsnames preimenuj u tnsnames.ora
[ MarkoBalkan @ 25.08.2012. 13:40 ] @
Citat:
Miroslav Strugarevic: Da li si setovao ORACLE_HOME promenljivu za oracle korisnika?

[Ovu poruku je menjao Miroslav Strugarevic dana 25.08.2012. u 13:04 GMT+1]


radio sam po ovome

http://kungfucodemonkey.blogsp...oving-data-from-oracle-to.html

Citat:
Miroslav Strugarevic: Takodje tnsnames preimenuj u tnsnames.ora


file ima nastavak ora, samo ja nisam napisao.
[ sasa_vu @ 25.08.2012. 14:48 ] @
Ova greska uglavnom pokazuje na los(nesetovan) ORACLE_SID.
oracle_sid=orcl11;
export oracle_sid
[ Miroslav Strugarevic @ 25.08.2012. 15:38 ] @
Da vidimo sta si setovao.

su - oracle
env | grep ORACLE_
[ MarkoBalkan @ 25.08.2012. 15:48 ] @
Citat:
Miroslav Strugarevic:
Da vidimo sta si setovao.

su - oracle
env | grep ORACLE_



ne dobivam ništa, a konekcija sad radi.

hvala

postavio sam još jedno pitanje u vezi php i oci8 drivera na ES-u.

[ MarkoBalkan @ 26.08.2012. 17:35 ] @
u ~/.bashrc sam stavio

ORACLE_SID=orcl11;
export ORACLE_SID;
ORACLE_HOME=/usr/lib/oracle/11.2/client64;
export ORACLE_HOME;

ne pamti mi trajno varijable.

[ Miroslav Strugarevic @ 27.08.2012. 02:09 ] @
Kako to mislis ne pamti ti trajno?
[ MarkoBalkan @ 27.08.2012. 06:56 ] @
riješeno

dodao sam u bashrc i sad sve ok.podešeno i mogu se spojiti.

[ MarkoBalkan @ 27.08.2012. 07:01 ] @
konekcija na bazu sa sqlplus64 sad radi.

ali kad se hoću spojiti preko php-a, sa oci driverom dobivam slijedeće.

PHP warning i fatal error: oci_connect(): 0ra-12504 - TNS: listener was not given the SERVICE_NAME in CONNECT_DATA
[ MarkoBalkan @ 27.08.2012. 08:14 ] @
za konekciju je stavljen
$conn = oci_connect('user', 'password','orcl_sid.domena');

ne javlja nikakvu grešku ali se i ne spaja na bazu, jednostavno ne prolazi konekciju tj. connection string uopće ne prolazi.

iz sql plusa sve uredno radi.


[ Miroslav Strugarevic @ 27.08.2012. 08:46 ] @
Citat:
MarkoBalkan:
za konekciju je stavljen
$conn = oci_connect('user', 'password','orcl_sid.domena');

ne javlja nikakvu grešku ali se i ne spaja na bazu, jednostavno ne prolazi konekciju tj. connection string uopće ne prolazi.

iz sql plusa sve uredno radi.



Marko kada resis problem napisi step by step kako si ga resio da bi drugi korisnici (ako nalete na istu gresku) mogli lako da se snadju...

Probaj ovako:

Code:
$conn = oci_connect('user', 'password', 'orcl11');


Ili ovo:

Code:
$conn = oci_connect('user', 'pass', '//192.168.x.y/orcl11');


[Ovu poruku je menjao Miroslav Strugarevic dana 27.08.2012. u 10:02 GMT+1]
[ djoka_l @ 27.08.2012. 09:34 ] @
Da li PHP skript izvršavaš kao korisnik koji je setovao ORACLE_HOME ili kao neki drugi? Ja bih rekao da koristiš neki drugin korisnički nalog (apache?).

Uzgred, ORACLE_SID je fizičko ime baze, kada se konektuješ koristiš alias (ono što ti stoji u tnsnames.ora) koji može da bude različit od SID-a baze.

I treće, nemoj da koristiš domen u aliasu ako nisi baš siguran kako si ga definisao. Vrlo verovatno je da nije domen ono što ti misliš da jeste. Najčešća početnilka greška je da misle da je domen .world, a on je drugačije definisan i obrnuto, da kod definisanog imena domena koriste .world
[ MarkoBalkan @ 27.08.2012. 16:13 ] @
Citat:
Miroslav Strugarevic:
Citat:
MarkoBalkan:
za konekciju je stavljen
$conn = oci_connect('user', 'password','orcl_sid.domena');

ne javlja nikakvu grešku ali se i ne spaja na bazu, jednostavno ne prolazi konekciju tj. connection string uopće ne prolazi.

iz sql plusa sve uredno radi.



Marko kada resis problem napisi step by step kako si ga resio da bi drugi korisnici (ako nalete na istu gresku) mogli lako da se snadju...

Probaj ovako:

Code:
$conn = oci_connect('user', 'password', 'orcl11');


Ili ovo:

Code:
$conn = oci_connect('user', 'pass', '//192.168.x.y/orcl11');


[Ovu poruku je menjao Miroslav Strugarevic dana 27.08.2012. u 10:02 GMT+1]



$conn=oci_connect('user','pass','//192.168.x.y/orcl11.domena')

domena se odnosi na windows domenu unutar mreže.
i sad radi sve.
na bazu se spajamo kao user@orcl11, oa ovaj user kod konekcije je bez @orcl11

hvala

mogu stavit neki tutorial za podešavanje php-a, oci i oracle clienta na linuxu.
[ Miroslav Strugarevic @ 27.08.2012. 17:47 ] @
Ne treba nikakav tutorijal vec samo da nagovestis sta je resilo tvoj problem :) Drago mi je da si resio problem.. Pozdrav!