Linux 下命令行启动与关闭WebLogic的相关服务

WebLogic 的服务器类型

WebLogic提供了三种类型的服务器:

  1. 管理服务器
  2. 节点服务器
  3. 托管服务器

示例和关系如下图:
在这里插入图片描述

对应三类服务器, 就有三种启动和关闭的方式。本篇介绍使用命令行脚本的方式启动和关闭这三种类型的服务器。
关于WebLogic 的相关介绍可以参考:
WebLogic及其重要概念

Linux 下WebLogic 服务器的启动方式

在Linux服务器中日常的WebLogic的管理中,较常使用的启动和关闭服务器的方式有:

服务器类型启动停止
管理服务器命令行命令行
节点服务器命令行命令行
受管服务器1.管理控制台
2.命令行
1.管理控制台
2.命令行

管理控制台的方式直观, 容易记忆, 但命令行的方式更为高效, 特别是在自动化和定期自动处理上较为便捷。

命令行启动与关闭管理服务器

可以使用域目录下的 startWebLogic.sh 启动WebLogic 服务器。
在实际的场景中,往往是登录到远端的WebLogic 服务器, 使用命令终端启动,在这种使用场景下,如果Shell关闭则服务就停止了, 比如说使用Putty SSH登录远端的Linux服务器, 在Putty的终端启动了WebLogic, 在Putty 关闭的时候, 管理服务器也就关闭了。
此外, 为了查看日志方便, 可以将管理服务器的日志输出到指定的文件。
综合以上的要求, 完整的启动脚本如下:

cd /weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
nohup ./startWebLogic.sh >> mansrv.log &
  • nohup & 用于设定进程在后台运行
  • 注意替换成实际的WebLogic的域的目录

管理服务器的关闭就简单了,

cd /weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
./stopWebLogic.sh

命令行启动与关闭节点管理器

在管理服务器启动之后,启动WebLogic节点管理器的步骤如下:

  1. 打开命令行窗口。
  2. 进入WebLogic的安装目录,例如:cd /home/oracle/Oracle/Middleware/user_projects/domains/base_domain/bin。
  3. 运行startNodeManager.sh(Unix/Linux)或startNodeManager.cmd(Windows)命令。
    示例:
cd /weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
nohup ./startNodeManager.sh >> nodeman.log &

关闭WebLogic节点管理器:

  1. 打开命令行窗口。
  2. 进入WebLogic的安装目录,例如:cd /home/oracle/Oracle/Middleware/user_projects/domains/base_domain/bin。
  3. 运行stopNodeManager.sh(Unix/Linux)或stopNodeManager.cmd(Windows)命令。
    示例:
cd /weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
./stopManagedWebLogic.sh

命令行启动与关闭受管服务器

受管服务器也有对应的脚本文件 startManagedWebLogic.sh , 但受管服务器的命令相对要复杂一点。

在 Linux 系统中关闭受管服务器可以使用以下步骤:

  1. 打开终端,并进入 WebLogic安装目录的域目录的bin 目录,比如:
cd /weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin
  1. 执行以下命令关闭受管服务器:
./startManagedWebLogic.sh server_name url username password

其中,server_name 参数为受管服务器的名称,url 参数为受管服务器的 URL,usernamepassword 参数为访问受管服务器所需的用户名和密码。

例如,关闭名为 myserver 的受管服务器,URL 为 t3://localhost:7001,用户名为 weblogic,密码为 password,则命令应为:

./startManagedWebLogic.sh myserver t3://localhost:7001

启动的过程中需要输入登录管理控制台的用户和密码。

如何避免输入管理员用户和密码

WebLogic 管理服务器的启动脚本startManagedWebLogic.sh在运行时可能需要输入管理员用户名和密码。可以通过创建一个包含用户名和密码的 boot 属性文件,然后在启动脚本中使用这个文件的方式来避免在每次启动服务器时手动输入这些信息。

以下是创建和使用 boot 属性文件的步骤:

  1. 创建一个新的文本文件,例如命名为boot.properties
  2. 在这个文件中输入你的用户名和密码,格式如下:
   username=your_username
   password=your_password
将`your_username`和`your_password`替换为你的 WebLogic 管理员用户名和密码。
  1. boot.properties文件放到你的服务器的security目录下。这个目录的位置一般是:

{DOMAIN_HOME}/servers/{SERVER_NAME}/security

在这里,{DOMAIN_HOME}是你的域的主目录,{SERVER_NAME}是你的服务器名称。

  1. 运行startManagedWebLogic.sh脚本来启动服务器:
./startManagedWebLogic.sh myserver t3://localhost:7001

配置之后,服务器在启动时就会使用boot.properties文件中的用户名和密码进行自动登录了。

  • 注意,保存用户名和密码在文件中会带来安全风险,需要确保boot.properties文件的访问权限设置得足够严格,以防止任何未授权的访问。另外,WebLogic 在第一次读取这个文件后,会将其中的用户名和密码加密,以提供一些额外的安全性。

在哪台机器运行启动受管服务器命令

使用startManagedWebLogic.sh脚本来启动 WebLogic 受管理服务器(Managed Server)时,应该在托管该服务器的物理机器上运行这个脚本。
举例来看:

受管服务器机器名
ManagedServer_1machine1
ManagedServer_2machine2
ManagedServer_3machine2

启动ManagedServer_3, 执行如下命令:

 ./startManagedWebLogic.sh anagedServer_3  t3://xxx:7001
  • 该命令在machine1执行也可以启动, 但是启动的进程是在machine1
  • 正确的方式是在machine2 执行启动ManagedServer_3

总结

  • 启动管理服务器
    nohup ./startWebLogic.sh >> mansrv.log &

  • 启动节点管理器
    nohup ./startNodeManager.sh >> nodeman.log &

  • 启动受管服务器
    可以在管理控制台启动受管服务器, 也可以使用命令行的方式启动:
    ./startManagedWebLogic.sh 受管服务器名字 t3://管理服务器IP:端口

避免启动时输入用户名、密码:在{DOMAIN_HOME}/servers/{SERVER_NAME}/security 中 创建boot.properties文件,存放用户名、密码。



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/213530.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

系统地自学 Python

文章目录 如何系统地自学 Python1. 选择合适的 Python 版本2. 安装 Python 和必要的工具3. 学习 Python 的基础知识4. 学习 Python 的高级特性5. Python 的应用领域6. 保持良好的学习习惯 如何系统地自学 Python Python 是一种广泛使用的编程语言,它具有简洁、易读、…

微服务的应用架构

架构描述的是在更高层次将应用拆分为子系统或模块的方法,以及这些子系统之间的交互关系。在一个基于微服务架构构建的应用中,每个服务都需要有自己的架构。 事实上,单体应用在复杂度较低时,它的生产效率是要高于微服务的。只有在…

【Go语言 map源码分析】

map底层数据结构 我们在之前学习C中的map时知道了 map的底层其实是有两种数据结构 这取决于我们要求它有序还是无序 如果说我们要求map是有序的它的底层数据结构就是红黑树如果说我们要求map是无序的它的底层数据结构就是哈希表 但是Go语言中的map数据结构有点特殊 如下图 …

QueryRunner报红处理

如图,有同学反映QueryRunner报红,就是没有导包 自己去找项目的地址,找到web文件夹下的WEB-INF 把这些jar包都粘贴进去,以后项目基本都会用到的,资源自己去找 粘贴好后打开文件的Project Structure 点击Dependencies 点…

github打不开,全网最简单解决方法,没有之一

下载watt toolkit, 选择‘github’,点击‘一键加速’, 具体步骤如下:去电脑微软商店下载watt toolkit,或者直接打开网址https://apps.microsoft.com/detail/9MTCFHS560NG?hlen-us&glUS 如图,点击安装i…

洛谷 B2006 地球人口承载力估计 C++代码

目录 前言 思路点拨 AC代码 结尾 前言 今天我们来做洛谷上的一道题目。 网址:地球人口承载力估计 - 洛谷 题目: 思路点拨 经典牛吃草问题。 解设一个人一年吃一份草。 则x*a-y*b为会多出的草,为什么会多呢?是因为每年都有…

Vue3-路由

VueRouter4路由语法解析 1.创建路由实例由createRouter实现 2.路由模式 1)history模式使用createWebHistory():地址栏不带# 2)hash模式使用createWebHashHistory():地址栏带# 3)参数是基础路径,默认/ …

智跃人力资源管理系统GenerateEntityFromTable.aspx接口存在SQL注入漏洞 附POC

@[toc] 智跃人力资源管理系统GenerateEntityFromTable.aspx接口存在SQL注入漏洞 附POC 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者…

弦理论的技术探索

弦理论的技术探索 一、引言 弦理论,作为现代物理学中的一个重要分支,旨在揭示宇宙的终极规律。它认为,宇宙中的一切物质和能量都是由微小的弦振动产生的。本文将深入探讨弦理论的技术层面,包括其数学基础、物理应用以及计算机模拟等方面。 二、弦理论的数学基础 弦理论的…

【Delphi】中使用Indy进行UDP广播通信

目录 一、服务器端(接收端) 二、客户端(广播端) Delphi中进行UDP广播通信函数代码: 一、服务器端(接收端) 在主界面上返放置一个TIdUDPServer控件,设置好该控件的监听端口&#…

C++笔试训练day_1

文章目录 选择题编程题 选择题 编程题 #include <iostream> #include <algorithm> #include <vector>using namespace std;int main() {int n 0;cin >> n;vector<int> v;v.resize(3 * n);int x 0;for(int i 0; i < v.size(); i){cin >&…

94基于matlab的蚁群算法 (ACO) 对付的图像边缘检测问题

基于matlab的蚁群算法 (ACO) 对付的图像边缘检测问题。提出基于蚁群算法的边缘检测方法是能够建立一个信息素矩阵表示提出了一种在图像每个像素位置的边缘信息根据大量的蚂蚁的运动有哪些派去在图像上移动。此外&#xff0c;运动这些蚂蚁是由图像的局部变化驱动强度值。数据可更…

什么是Anaconda

Anaconda的安装也很方便。打开这个网站Anaconda下载&#xff0c;然后安装即可。 Anaconda可以帮助我们解决团队之间合作的包依赖管理问题。在没有使用Anaconda之前&#xff0c;如果你的Python程序想让你的同事运行&#xff0c;那么你的同事可能会遇到很多包依赖问题&#xff0…

调优--学习笔记

1&#xff0c;Presto调优 数据存储格式 1&#xff09;合理设置分区 与Hive类似&#xff0c;Presto会根据元信息读取分区数据&#xff0c;合理的分区能减少Presto数据读取量&#xff0c;提升查询性能。 2&#xff09;使用列式存储 Presto对ORC文件读取做了特定优化&#xff0c…

【Python】tensorflow学习的个人纪录(2)

actor.learn(s, a, td_error)def learn(self, s, a, td):s s[np.newaxis, :]feed_dict {self.s: s, self.a: a, self.td_error: td}_, exp_v self.sess.run([self.train_op, self.exp_v], feed_dict)return exp_v输入变量的数值&#xff1a; 步进&#xff1a; []---->[…

ER图是什么,怎么画?

ER图&#xff08;Entity-Relationship Diagram&#xff09;是一种用于描述实体间关系的图形化表示方法。它主要用于数据库设计&#xff0c;可以清晰地展示实体、属性和实体间的联系。常用的ER图类型包括&#xff1a; 实体-关系模型&#xff08;Entity-Relationship Model&…

最新最全的Postman接口测试: postman实现参数化

什么时候会用到参数化 比如&#xff1a;一个模块要用多组不同数据进行测试 验证业务的正确性 Login模块&#xff1a;正确的用户名&#xff0c;密码 成功&#xff1b;错误的用户名&#xff0c;正确的密码 失败 postman实现参数化 在实际的接口测试中&#xff0c;部分参数…

WordPress定时文章自动发布技巧

对于许多WordPress站长来说&#xff0c;文章的管理和发布计划往往是一个头疼的问题。随着内容的不断增加&#xff0c;时间表的调整以及发布频率的把握成为了让人焦头烂额的挑战。 一、时间管理难题 对于博客管理员来说&#xff0c;时间管理一直是个令人困扰的问题。在忙碌的生…

Vue3实现滚动到容器底部时发送请求,加载新数据

问题来源 在项目中出现了需要在容器滚动到底部时&#xff0c;加载新的数据的需求&#xff0c;以下是解决的方案笔记 解决 画了个流程图&#xff1a; 如图&#xff0c;先添加一个动态加载的图标&#xff0c;还有全部数据载完的《到底啦...》 大概这么个样子&#xff0c;之后呢…

苍穹外卖——地址簿功能

地址簿功能代码 1. 地址簿功能 1.1 需求分析和设计 查询地址列表新增地址修改地址删除地址设置默认地址查询默认地址 1.1.1 接口设计 根据上述原型图先粗粒度设计接口&#xff0c;共包含7个接口。 接口设计&#xff1a; 新增地址查询登录用户所有地址查询默认地址根据id…