• windows下如何访问linux下的oracle数据库


    我们从上面可以看出:

      需要

        1.oracle client客户端(这儿使用,oracle instance client ,简单)

        2.odbc驱动   oracle instance client默认就有

        3.linux下需要安装Linux oracle 服务器

        4.两个配置文件tnsnames.ora,listener.ora

          tnsnames.ora  ====》客户端连接服务器配置文件

           listener.ora   ===》服务器侦听服务配置

    linux  oracle服务器 listener.ora:       

    [oracle@localhost admin]$ pwd
    /home/oracle_11/app/oracle/product/11.2.0/db_1/network/admin

      首先安装Linux 下的oracle,可以看这个https://www.cnblogs.com/bwbfight/p/9621218.html

    安装好后Linux 下需要做的事 

      1 oracle虚拟机需要固定IP,才能被外面的客户端连接上来

               Root登陆linux机器

          系统/首选项/网络连接

            重启系统

      2  oracle用户启动oracle服务器

      3 在linux环境中,用sqlplus工具访问oracle服务

        在oracle用户下,用sqlplus访问oracle服务 

          必须用scott/aa @orcl这种形成访问成功,则后台服务器程序才能访问成功

        在非oracle用户下(比如在test03),用sqlplus访问oracle服务

          必须用scott/aa@orcl这种形成访问成功,则后台服务器程序才能访问成功

           chmod 777   /home/oracle_11/app   -R       (root用户) 修改oracle家目录权限

           同时配置.bash_profile       

    # .bash_profile
    
    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
        . ~/.bashrc
    fi
    
    # User specific environment and startup programs
    
    umask 022 
    ORACLE_BASE=/home/oracle_11/app
    ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1
    ORACLE_SID=orcl
    PATH=$PATH:./:$HOME/bin:$ORACLE_HOME/bin
    LD_LIBRARY_PATH=./lib:$HOME/lib:/usr/lib:$ORACLE_HOME/lib 
    #LANG=C 
    export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH 
    
    NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG

    根据自己环境修改

     ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH

    4 在win环境中,用sqlplus工具访问linux环境下的oracle服务( 192.168.43.252为linux服务器ip)

           1 Ping 192.168.43.252

      2 telnet 192.168.43.252 1521  防火墙没有把端口给封住

          //防火墙 linux服务器 1521 端口 放开

     linux下: ufw disable

    接着Linux开启oracle服务并监听:

      1. 启动oracle服务 (启动oracle服务器 必须使用oracle用户)-

    启动oracle服务 (启动oracle服务器 必须使用oracle用户)-
                [oracle@localhost ~]$ sqlplus /nolog
                
                SQL> connect /as sysdba
                  Connected to an idle instance.
                SQL> startup             
                  ORACLE instance started.
                
                  Total System Global Area  780824576 bytes
                  Fixed Size                  2217424 bytes
                  Variable Size             599788080 bytes
                  Database Buffers          176160768 bytes
                  Redo Buffers                2658304 bytes
                  Database mounted.
                  Database opened.

      2.启动监听服务器 

    [oracle@localhost ~]$ lsnrctl start
                
                LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 31-JAN-2016 06:12:24
                
                Copyright (c) 1991, 2009, Oracle.  All rights reserved.
                
                Starting /home/oracle_11/app/oracle/product/11.2.0/db_1/bin/tnslsnr: please wait...
                
                TNSLSNR for Linux: Version 11.2.0.1.0 - Production
                System parameter file is /home/oracle_11/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
                Log messages written to /home/oracle_11/app/diag/tnslsnr/localhost/listener/alert/log.xml
                Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
                Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
                
                Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))

    注意:

     

    ok... Linux下的事情干完了,

    接着windows下接着干活

       1. oracle instance client 安装:https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html(注意是32位还是64位,不然不工作了) 

       2.解压后放到固定目录:

          我的是放到e盘:E:oracle_clientinstantclient_18_3

    配置

      Win机器的tnsnames.ora,新建tnsnames.ora放到E:oracle_clientinstantclient_18_3下

    内容如下

    # tnsnames.ora Network Configuration File: E:oracle_clientinstantclient_18_3
    SECMNGADEMIN =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.32.253)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = orcl)
        )
      )

    HOST:服务器IP地址 
    PORT:oracle端口号 
    SERVICE_NAME:oracle数据库上的实例名称(安装时如果没有指定一般为orcl)

    配置windows环境变量

        TNS_ADMIN =E:oracle_clientinstantclient_18_3

        NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK

        说明:TNS_ADMIN,是指tnsnames.ora文件所在的目录名。

          如果指定到客户端目录,则必须把tnsnames.ora文件复制过来才可以

         设置ORACLE_HOME环境变量

        ORACLE_HOME=E:oracle_clientinstantclient_18_3

        Path后面加一个;E:oracle_clientinstantclient_18_3

    在windows  cmd测试

        sqlplus scott/tiger@orcl (tiger为密码),如果能够执行,说明配置正确

    可能会报错

    oracle的12154错误排查

    分别在linux 下和windows下输入:sqlplus scott/aa@orcl

        1  .linux 下用test03(其他用户)不能访问oracle问题排查

        2.     windows下cmd访问出现如下

      ERROR:

        ORA-12154: TNS:could not resolve the connect identifier specified

        ORA-12154 11.2.0.1.0 ORA-12154

    2 解决方法

    [oracle@localhost admin]$ pwd

        /home/oracle_11/app/oracle/product/11.2.0/db_1/network/admin

    [oracle@localhost admin]$ ls

    看看

       listener.ora   ===》服务器侦听服务配置

      shrept.lst          

      tnsnames.ora  ====》客户端连接服务器配置文件     wbm01客户使用这个文件连接服务

                  要保证wbm01用户能访问这个目录:ADR_BASE = /home/oracle_11/app

    3 解决步骤

    ====> 然后切换用户
    
    [wbm01@localhost app]$ cd /home/oracle_11/app
    
    [wbm01@localhost app]$ pwd
    
      /home/oracle_11/app
    
    [wbm01@localhost app]$ ls
    
      admin  cfgtoollogs  checkpoints  diag  flash_recovery_area  oracle  oradata  oradiag_oracle
    
    [wbm01@localhost app]$ cd admin/
    
        -bash: cd: admin/: 权限不够

    解决如下:

    root用

           chomd 775 /home/oracle_11/app (家目录)

    windows下继续

    然后配置plsql或者navicat

    我用的navicat,工具-》选项

      

    然后就可以连接数据库了

    ok...成功

    现在来配置 oracle  odbc

      oracle instance client   里面 安装路径E:oracle_clientinstantclient_18_3默认就有

        

    如果没有请下载 1. oracle instance client 安装:https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html(注意是32位还是64位,不然不工作了) 

      

     就可以了!

    一定要分请你是32位还是64位,如果不行请自行换成相应位数(win7 32/64都支持)

     如果你是64位系统这个数据源ODBC
        需要运行C:WindowsSysWOW64文件夹下的

    或者控制面板-》管理工具-》数据源odbc-》添加

    Data Source Name ,descript随便写

    TNS service name:需要和tnsnames.ora配置的名字一样

    userid:数据库名字(如scott等)

    点击 test connection ,弹出成功连接即可!

    ok........

    搞定,bye 了个bye.... 忒麻烦了.....

      

  • 相关阅读:
    破解VNC密码
    word无法插入页码
    修改windows远程桌面端口号
    系统每次进入桌面报错“由于启动计算机时出现了页面文件配置问题”
    树梅派安装GMChess中国象棋
    Linux命令Top详解
    树梅派修改root密码及切换账户
    树梅派安装截图工具
    Linux有趣的应用,画只小猫陪伴你
    Windows 10访问XP系统共享文件报”因为文件共享不安全,所以你不能连接到文件共享。。。“
  • 原文地址:https://www.cnblogs.com/bwbfight/p/9639938.html
Copyright © 2020-2023  润新知