{"id":2829,"date":"2025-02-06T14:26:33","date_gmt":"2025-02-06T14:26:33","guid":{"rendered":"https:\/\/w3buddy.com\/?p=2829"},"modified":"2026-01-15T13:20:40","modified_gmt":"2026-01-15T07:50:40","slug":"how-to-connect-to-oracle-database-using-sqlplus","status":"publish","type":"post","link":"https:\/\/w3buddy.com\/blog\/how-to-connect-to-oracle-database-using-sqlplus\/","title":{"rendered":"How to Connect to Oracle Database Using SQL*Plus"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">SQL*Plus is a command-line tool used to interact with Oracle databases. This guide covers all possible ways to connect using <code>sqlplus<\/code>, along with examples.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Connect as SYSDBA (Administrator Mode)<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you have administrative privileges, you can connect as <code>SYSDBA<\/code>. This is useful for managing the database.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus \/ as sysdba<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example Output:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 5 10:00:00 2025\nConnected to:\nOracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This method works <strong>only if SQL*Plus is run on the same machine as the database<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Connect Using a Username and Password<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you have a valid Oracle database user account, you can connect using your username and password.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus username\/password<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus scott\/tiger<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Here, <strong>scott <\/strong>is the username, and <strong>tiger <\/strong>is the password.<\/li>\n\n\n\n<li>This works <strong>only on the local database<\/strong> unless configured for remote access.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Connect to a Remote Database Using TNS (Oracle Net Service Name)<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If your Oracle database is running on another server, you can use a <strong>TNS alias<\/strong> (defined in <code>tnsnames.ora<\/code>).<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus username\/password@TNS_ALIAS<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus scott\/tiger@orcl<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Here, <strong>orcl <\/strong>is the TNS alias configured in <strong>tnsnames.ora<\/strong> (usually found in <strong>$ORACLE_HOME\/network\/admin\/<\/strong>).<\/li>\n\n\n\n<li>Make sure the Oracle client is installed and <code>tnsnames.ora<\/code> is properly configured.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Connect Using a Full Connection String<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you don\u2019t have a <strong>tnsnames.ora<\/strong> entry, you can connect using a fully qualified connection string.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus username\/password@\/\/hostname:port\/service_name<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus scott\/tiger@\/\/192.168.1.100:1521\/orclpdb<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>192.168.1.100 \u2192 Oracle server <strong>IP\/hostname<\/strong><\/li>\n\n\n\n<li>1521 \u2192 Oracle <strong>listener port<\/strong><\/li>\n\n\n\n<li>orclpdb \u2192 Oracle <strong>service name<\/strong> (or database name)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This method is useful when connecting over the network without configuring <strong>tnsnames.ora<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Connect Without Providing the Password (Secure Method)<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you don\u2019t want to type the password in the command (for security reasons), use the <code>nolog<\/code> option and then manually enter credentials.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus \/nolog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Then, at the SQL prompt, enter:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">SQL> connect username@service_name\nEnter password:<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">SQL> connect scott@orclpdb\nEnter password:<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This prevents the password from being exposed in the command history.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>6. Connect Using an EZCONNECT (Easy Connect) String<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The <strong>EZCONNECT method<\/strong> allows you to connect without configuring <code>tnsnames.ora<\/code>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus username\/password@hostname:port\/service_name<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Example:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus scott\/tiger@192.168.1.100:1521\/orclpdb<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">To use EZCONNECT, ensure the following parameter is set in Oracle:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">ALTER SYSTEM SET LOCAL_LISTENER='(ADDRESS=(PROTOCOL=TCP)(HOST=0.0.0.0)(PORT=1521))';<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This method simplifies remote connections.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>7. Connect Using a Wallet (For Secure Passwordless Login)<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Oracle <strong>wallets<\/strong> allow users to connect without entering a password.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Steps to Configure:<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Create a secure wallet using Oracle tools:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">mkstore -wrl $ORACLE_HOME\/network\/admin -create\nmkstore -wrl $ORACLE_HOME\/network\/admin -createCredential orclpdb scott tiger<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Use the wallet to connect:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus \/@orclpdb<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This is useful for <strong>automated scripts<\/strong> where you don\u2019t want to store passwords.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>8. Connect Using SYSOPER (Alternative to SYSDBA)<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>SYSOPER<\/code> provides limited administrative privileges.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Command:<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-sql\">sqlplus \/ as sysoper<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This is similar to <code>SYSDBA<\/code> but with <strong>fewer privileges<\/strong> (e.g., it cannot perform database recovery).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SQL*Plus offers multiple ways to connect to an Oracle database, whether you\u2019re working locally or remotely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Summary of Connection Methods:<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-table has-small-font-size\"><table><thead><tr><th>Method<\/th><th>Command Example<\/th><\/tr><\/thead><tbody><tr><td>SYSDBA (Admin)<\/td><td><code>sqlplus \/ as sysdba<\/code><\/td><\/tr><tr><td>Username &amp; Password<\/td><td><code>sqlplus scott\/tiger<\/code><\/td><\/tr><tr><td>Remote Connection (TNS)<\/td><td><code>sqlplus scott\/tiger@orcl<\/code><\/td><\/tr><tr><td>Full Connection String<\/td><td><code>sqlplus scott\/tiger@\/\/192.168.1.100:1521\/orclpdb<\/code><\/td><\/tr><tr><td>Secure Login (No Password in Command)<\/td><td><code>sqlplus \/nolog<\/code> \u2192 <code>connect scott@orclpdb<\/code><\/td><\/tr><tr><td>EZCONNECT<\/td><td><code>sqlplus scott\/tiger@192.168.1.100:1521\/orclpdb<\/code><\/td><\/tr><tr><td>Wallet (Passwordless)<\/td><td><code>sqlplus \/@orclpdb<\/code><\/td><\/tr><tr><td>SYSOPER<\/td><td><code>sqlplus \/ as sysoper<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Each method is useful in different scenarios. If you&#8217;re working in a <strong>secure environment<\/strong>, consider using <strong>passwordless login (wallets) or secure login (<code>\/nolog<\/code>)<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>SQL*Plus is a command-line tool used to interact with Oracle databases. This guide covers all possible ways to connect using sqlplus, along with examples. 1. Connect as SYSDBA (Administrator Mode) If you have administrative privileges, you can connect as SYSDBA. This is useful for managing the database. Command: Example Output: This method works only if [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2831,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"googlesitekit_rrm_CAowu461DA:productID":"","footnotes":""},"categories":[1225],"tags":[],"class_list":["post-2829","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database"],"_links":{"self":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/posts\/2829","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/comments?post=2829"}],"version-history":[{"count":1,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/posts\/2829\/revisions"}],"predecessor-version":[{"id":2830,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/posts\/2829\/revisions\/2830"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/media\/2831"}],"wp:attachment":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/media?parent=2829"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/categories?post=2829"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/tags?post=2829"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}