咨询
交流群
电话

CentOS 7 安装 Weblogic 12cR2

文档 > 服务器 2018-07-14 18:51 阅读

CentOS尽量不选择最小化安装,选择GNOME桌面。因为 Weblogic 12c 要有图像界面才能安装,否则只能使用静默方式安装,难度更大。

  • 静默安装方式:https://www.linuxidc.com/Linux/2015-01/112357.htm
  • 远程图形界面映射安装方式:https://www.linuxidc.com/Linux/2015-01/112357p2.htm
  • 要先装好JDK8。版本要求1.8.0_131以上。注意:不能用自带的OpenJDK,要先卸载掉:yum remove java*

    jdk的安装可以参考http://www.jspxcms.com/knowledge/400.html

    下载

    在下载页面选择 Generic (800 MB)http://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-for-dev-1703574.html

    解压到/tmp目录,方便切换用户后进行安装,放在/root目录其他用户无法访问:

    unzip fmw_12.2.1.3.0_wls_Disk1_1of1.zip -d /tmp
    

    创建weblogic用户

    useradd weblogic
    passwd weblogic
    

    退出root用户,使用weblogic用户登录。使用root用户无法安装。

    安装

    有图形界面(桌面)可直接安装:

    java -jar fmw_12.2.1.3.0_wls.jar
    

    否则要使用静默安装模式,需要两个额外的两个文件:

    java -jar fmw_12.2.1.3.0_wls.jar -silent -responseFile /home/weblogic/wls.rsp -invPtrLoc /home/weblogic/oraInst.loc
    

    创建响应文件:

    vim /home/weblogic/wls.rsp
    

    内容如下:

    [ENGINE]
    
    #DO NOT CHANGE THIS.
    Response File Version=1.0.0.0.0
    
    [GENERIC]
    
    #Set this to true if you wish to skip software updates
    DECLINE_AUTO_UPDATES=true
    
    #My Oracle Support User Name
    MOS_USERNAME=
    
    #My Oracle Support Password
    MOS_PASSWORD=<SECURE VALUE>
    
    #If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true
    AUTO_UPDATES_LOCATION=
    
    #Proxy Server Name to connect to My Oracle Support
    SOFTWARE_UPDATES_PROXY_SERVER=
    
    #Proxy Server Port
    SOFTWARE_UPDATES_PROXY_PORT=
    
    #Proxy Server Username
    SOFTWARE_UPDATES_PROXY_USER=
    
    #Proxy Server Password
    SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>
    
    #The oracle home location. This can be an existing Oracle Home or a new Oracle Home
    ORACLE_HOME=/home/weblogic/Oracle/Middleware/Oracle_Home
    
    #The federated oracle home locations. This should be an existing Oracle Home. Multiple values can be provided as comma seperated values
    FEDERATED_ORACLE_HOMES=
    
    #Set this variable value to the Installation Type selected. e.g. WebLogic Server, Coherence, Complete with Examples.
    INSTALL_TYPE=WebLogic Server
    

    创建初始化环境文件:

    vim /home/weblogic/oraInst.loc
    

    内容如下:

    inst_group=weblogic
    inventory_loc=/home/weblogic/oraInventory
    

    创建域

    图形界面下使用:

    /home/weblogic/Oracle/Middleware/Oracle_Home/wlserver/common/bin/config.sh
    

    命令行静默模式比较复杂,参考资料:

  • https://blog.csdn.net/xcjing/article/details/60141143
  • https://segmentfault.com/a/1190000006795936
  • mkdir -p /home/weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain
    cd /home/weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain
    cp /home/weblogic/Oracle/Middleware/Oracle_Home/wlserver/common/templates/scripts/wlst/basicWLSDomain.py ./base_domain.py
    vim base_domain.py
    

    修改建域脚本:

    ...
    
    # Please set password here before using this script, e.g. cmo.setPassword('value')
    
    # 此处设置密码。需要8位,并且至少要一个数字或特殊字符。
    cmo.setPassword('password1')
    
    #=======================================================================================
    # Create a JMS Server.
    #=======================================================================================
    
    # 中间脚本全部删掉
    
    #=======================================================================================
    # Write the domain and close the domain template.
    #=======================================================================================
    
    setOption('OverwriteDomain', 'true')
    #writeDomain('/home/weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/basicWLSDomain')
    # 此处改为自己的domains路径
    writeDomain('/home/weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain')
    closeTemplate()
    
    ...
    

    执行脚本:

    # 避免建域速度慢和首次访问控制台慢。可将此代码放到 /etc/profile 文件里
    export CONFIG_JVM_ARGS='-Djava.security.egd=file:/dev/urandom'
    # 执行脚本
    /home/weblogic/Oracle/Middleware/Oracle_Home/oracle_common/common/bin/wlst.sh base_domain.py
    

    启动域停止服务:

    ./bin/startWebLogic.sh
    ./bin/stopWebLogic.sh
    

    如果停止命令无响应,显示Connecting to t3://weblogic12c2:7001 with userid weblogic,有可能是机器名无法解析,可修改stopWebLogic.sh文件,将weblogic12c2改为localhost

    访问地址:http://localhost:7001/console

    在有防火墙的情况下,只能在本机访问,可以开放7001端口:

    firewall-cmd --zone=public --add-port=7001/tcp --permanent
    firewall-cmd --reload
    

    也可以直接关闭防火墙:

    # 关闭
    systemctl stop firewalld
    # 禁止开机启动
    systemctl disable firewalld
    

    重新开启使用以下命令:

    # 启动
    systemctl start firewalld
    # 允许开机启用
    systemctl enable firewalld
    # 查看状态
    systemctl status firewalld
    

    免密启动和后台运行

    生成模式下启动weblogic需要输入用户名密码,如果不想每次都输入用户名密码,可以新建文件{Oracle_Home}/user_project/domain/base_domain/servers/AdminServer/security/boot.properties

    cd {Oracle_Home}/user_project/domain/base_domain/servers/AdminServer
    mkdir security
    cd security
    vi boot.properties
    

    内容如下(用户名密码填写安装domain时设置的用户名密码):

    username=weblogic
    password=password1
    

    直接运行./startWebLogic.sh是前台运行,关闭窗口后服务会自动停止。如果希望后台运行,关闭窗口后服务继续运行,可以使用以下命令:

    nohup ./startWebLogic.sh &
    

    该命令会创建nohup.out文件,原本控制台的输出内容会写入到这个文件里面。