Sponsored Content
Top Forums Shell Programming and Scripting How the user will provide the parameters for Oracle db connection in a shell script? Post 302605903 by priya001 on Friday 9th of March 2012 02:32:56 AM
Old 03-09-2012
How the user will provide the parameters for Oracle db connection in a shell script?

I'm new into unix.

My question: is possible to write a shell script which will ask for the
ORACLE_HOME, ORACLE_SID, USERNAME, PASSWORD to connect to Oracle db.

In generally we have to set the ORACLE_HOME in .profile file. And after putting the 'sqlplus' command it asks for the username & password for db connection.

plz share your ideas.

Thanks,
Priya
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

shell script- oracle connection problem

Hi all, I am having problem with a shell script. I have a couple of csv files. The shell script will do some operation on them, create a sql file which will then be called by sqlplus. The problem is to gracefully exit sqlplus at the end of every operation as I do not want to hang on to the... (4 Replies)
Discussion started by: nattynatty
4 Replies

2. Shell Programming and Scripting

passing oracle parameters back to Shell

Hi All, Does anyone have any solutions for passing back multiple variables back to the SHELL from a call to an ORACLE procedure: eg #username='scott' #password='tiger' #database='orcl' username='ITGCD03D03' password='tC5epIew' database='ITGCD03D' sqlplus -s... (4 Replies)
Discussion started by: satnamx
4 Replies

3. Shell Programming and Scripting

provide a user password from a script

Hi all, passwd <username> < /var/adm/passwd.txt cat /var/adm/passwd.txt abcd1234 abcd1234 when I run this from the script, it comes with: New password: It is not able to pick from the location /var/adm/passwd.txt. thanks in advance. (6 Replies)
Discussion started by: solaix14
6 Replies

4. Shell Programming and Scripting

Help in Shell scripting to modify the User Creation script in oracle database.

Hi, I have several users to create on my test Oracle database taking the scripts from the Production Oracle database. I have a separate text file where I have user-id and passwords maintained. I need help in writing a shell script to go thru the user creation scripts and replace VALUES... (1 Reply)
Discussion started by: rparavastu
1 Replies

5. Shell Programming and Scripting

oracle connection from shell script

Hi, For connecting to oracle my script is using the command sqlplus username/password@db_instance_name.For this to work i am setting ORACLE_HOME,TNS_ADMIN and ORACLE_SID in a seperate script.My question is,could we make a connection to oracle just by the command sqlplus... (4 Replies)
Discussion started by: DILEEP410
4 Replies

6. Shell Programming and Scripting

Creating oracle user and giving him grants using shell script

Hi , I want to write a shell script that can create oracle database user and grants permission to this user. Thanks & Regards, Deepak (4 Replies)
Discussion started by: Deepakjha
4 Replies

7. Shell Programming and Scripting

Verifying oracle connection from shell script

Hi, Oracle 9.2 Solaris 10 From the shell script ........How can we verify whether oracle connection is successful or not ? Shell script will prompt the user to enter the oracle schema username, password and tns name. So, *how to verify whether oracle connection has been established or... (14 Replies)
Discussion started by: milink
14 Replies

8. Shell Programming and Scripting

How to setup Oracle connection inside shell script?

Hi, We have Oracle Connection parameters set up in file name "TESTDB" at location /abc/etc.When I try to run my shell script it does not connect to Oracle database. Please let me know how "TESTDB" file can be called inside script. ####################### Setting the directories... (2 Replies)
Discussion started by: sandy162
2 Replies

9. UNIX for Dummies Questions & Answers

How to fix connection to Oracle database through shell script?

I have a question regarding how to connect to Oracle Database through shell script. 1. If I want call a stored procedure on Linux server as this, it works. $sqlplus /nolog SQL*Plus: Release 12.1.0.2.0 Production on Fri Jun 12 14:49:49 2015 Copyright (c) 1982, 2014, Oracle. All rights... (2 Replies)
Discussion started by: duke0001
2 Replies

10. Shell Programming and Scripting

Shell script verify connection to Oracle if not successful

i have a script that connects to the oracle database and executes the query statements. it works fine and i would like to add some message to check if the connection to oracle is not successful. basically this is the code snippet: #!/bin/sh ... ... ... sqlplus -s username/password@dbName... (2 Replies)
Discussion started by: wtolentino
2 Replies
OCI_CONNECT(3)															    OCI_CONNECT(3)

oci_connect - Connect to an Oracle database

SYNOPSIS
resource oci_connect (string $username, string $password, [string $connection_string], [string $character_set], [int $session_mode]) DESCRIPTION
Returns a connection identifier needed for most other OCI8 operations. See Connection Handling for general information on connection management and connection pooling. From PHP 5.1.2 (PECL OCI8 1.1) oci_close(3) can be used to close the connection. The second and subsequent calls to oci_connect(3) with the same parameters will return the connection handle returned from the first call. This means that transactions in one handle are also in the other handles, because they use the same underlying database connection. If two handles need to be transactionally isolated from each other, use oci_new_connect(3) instead. PARAMETERS
o $username - The Oracle user name. o $password - The password for $username. o $connection_string -Contains the Oracle instance to connect to. It can be an Easy Connect string, or a Connect Name from the tnsnames.ora file, or the name of a local Oracle instance. If not specified, PHP uses environment variables such as TWO_TASK (on Linux) or LOCAL (on Windows) and ORACLE_SID to determine the Oracle instance to connect to. To use the Easy Connect naming method, PHP must be linked with Oracle 10 g or greater Client libraries. The Easy Connect string for Oracle 10 g is of the form: [//]host_name[:port][/ser- vice_name]. From Oracle 11 g, the syntax is: [//]host_name[:port][/service_name][:server_type][/instance_name]. Service names can be found by running the Oracle utility lsnrctl status on the database server machine. The tnsnames.ora file can be in the Oracle Net search path, which includes $ORACLE_HOME/network/admin and /etc. Alternatively set TNS_ADMIN so that $TNS_ADMIN/tnsnames.ora is read. Make sure the web daemon has read access to the file. o $character_set -Determines the character set used by the Oracle Client libraries. The character set does not need to match the character set used by the database. If it doesn't match, Oracle will do its best to convert data to and from the database character set. Depending on the character sets this may not give usable results. Conversion also adds some time overhead. If not specified, the Oracle Client libraries determine a character set from the NLS_LANG environment variable. Passing this parameter can reduce the time taken to connect. o $session_mode -This parameter is available since version PHP 5 (PECL OCI8 1.1) and accepts the following values: OCI_DEFAULT, OCI_SYSOPER and OCI_SYSDBA. If either OCI_SYSOPER or OCI_SYSDBA were specified, this function will try to establish privileged connection using external credentials. Privileged connections are disabled by default. To enable them you need to set oci8.privileged_connect to On. PHP 5.3 (PECL OCI8 1.3.4) introduced the OCI_CRED_EXT mode value. This tells Oracle to use External or OS authentication, which must be configured in the database. The OCI_CRED_EXT flag can only be used with username of "/" and a empty password. oci8.privileged_connect may be On or Off. OCI_CRED_EXT may be combined with the OCI_SYSOPER or OCI_SYSDBA modes. OCI_CRED_EXT is not supported on Windows for security reasons. RETURN VALUES
Returns a connection identifier or FALSE on error. EXAMPLES
Example #1 Basic oci_connect(3) using Easy Connect syntax <?php // Connects to the XE service (i.e. database) on the "localhost" machine $conn = oci_connect('hr', 'welcome', 'localhost/XE'); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR); } $stid = oci_parse($conn, 'SELECT * FROM employees'); oci_execute($stid); echo "<table border='1'> "; while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) { echo "<tr> "; foreach ($row as $item) { echo " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td> "; } echo "</tr> "; } echo "</table> "; ?> Example #2 Basic oci_connect(3) using a Network Connect name <?php // Connects to the MYDB database described in tnsnames.ora file, // One example tnsnames.ora entry for MYDB could be: // MYDB = // (DESCRIPTION = // (ADDRESS = (PROTOCOL = TCP)(HOST = mymachine.oracle.com)(PORT = 1521)) // (CONNECT_DATA = // (SERVER = DEDICATED) // (SERVICE_NAME = XE) // ) // ) $conn = oci_connect('hr', 'welcome', 'MYDB'); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR); } $stid = oci_parse($conn, 'SELECT * FROM employees'); oci_execute($stid); echo "<table border='1'> "; while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) { echo "<tr> "; foreach ($row as $item) { echo " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td> "; } echo "</tr> "; } echo "</table> "; ?> Example #3 oci_connect(3) with an explicit character set <?php $conn = oci_connect('hr', 'welcome', 'localhost/XE', 'AL32UTF8'); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR); } $stid = oci_parse($conn, 'SELECT * FROM employees'); oci_execute($stid); echo "<table border='1'> "; while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) { echo "<tr> "; foreach ($row as $item) { echo " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td> "; } echo "</tr> "; } echo "</table> "; ?> Example #4 Using multiple calls to oci_connect(3) <?php $c1 = oci_connect("hr", "welcome", 'localhost/XE'); $c2 = oci_connect("hr", "welcome", 'localhost/XE'); // Both $c1 and $c2 show the same PHP resource id meaning they use the // same underlying database connection echo "c1 is $c1<br> "; echo "c2 is $c2<br> "; function create_table($conn) { $stmt = oci_parse($conn, "create table hallo (test varchar2(64))"); oci_execute($stmt); echo "Created table<br> "; } function drop_table($conn) { $stmt = oci_parse($conn, "drop table hallo"); oci_execute($stmt); echo "Dropped table<br> "; } function insert_data($connname, $conn) { $stmt = oci_parse($conn, "insert into hallo values(to_char(sysdate,'DD-MON-YY HH24:MI:SS'))"); oci_execute($stmt, OCI_DEFAULT); echo "$connname inserted row without committing<br> "; } function rollback($connname, $conn) { oci_rollback($conn); echo "$connname rollback<br> "; } function select_data($connname, $conn) { $stmt = oci_parse($conn, "select * from hallo"); oci_execute($stmt, OCI_DEFAULT); echo "$connname ----selecting<br> "; while (oci_fetch($stmt)) { echo " " . oci_result($stmt, "TEST") . "<br> "; } echo "$connname ----done<br> "; } create_table($c1); insert_data('c1', $c1); // Insert a row using c1 sleep(2); // sleep to show a different timestamp for the 2nd row insert_data('c2', $c2); // Insert a row using c2 select_data('c1', $c1); // Results of both inserts are returned select_data('c2', $c2); // Results of both inserts are returned rollback('c1', $c1); // Rollback using c1 select_data('c1', $c1); // Both inserts have been rolled back select_data('c2', $c2); drop_table($c1); // Closing one of the connections makes the PHP variable unusable, but // the other could be used oci_close($c1); echo "c1 is $c1<br> "; echo "c2 is $c2<br> "; // Output is: // c1 is Resource id #5 // c2 is Resource id #5 // Created table // c1 inserted row without committing // c2 inserted row without committing // c1 ----selecting // 09-DEC-09 12:14:43 // 09-DEC-09 12:14:45 // c1 ----done // c2 ----selecting // 09-DEC-09 12:14:43 // 09-DEC-09 12:14:45 // c2 ----done // c1 rollback // c1 ----selecting // c1 ----done // c2 ----selecting // c2 ----done // Dropped table // c1 is // c2 is Resource id #5 ?> NOTES
Note An incorrectly installed or configured OCI8 extension will often manifest itself as a connection problem or error. See Installing/Configuring for troubleshooting information. SEE ALSO
oci_pconnect(3), oci_new_connect(3), oci_close(3). PHP Documentation Group OCI_CONNECT(3)
All times are GMT -4. The time now is 01:44 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy