采样:
[oracle@sh02 ~]$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.4 (Santiago)
[oracle@sh02 ~]$ uname -r
2.6.32-358.el6.x86_64
[oracle@shfpdb02 ~]$ uname -r
2.6.32-358.el6.x86_64
[oracle@shfpdb02 ~]$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 80
On-line CPU(s) list: 0-79
Thread(s) per core: 2
Core(s) per socket: 10
Socket(s): 4
NUMA node(s): 4
Vendor ID: GenuineIntel
CPU family: 6
Model: 62
Stepping: 7
CPU MHz: 2194.697
BogoMIPS: 4388.89
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 20480K
NUMA node0 CPU(s): 0-9,40-49
NUMA node1 CPU(s): 10-19,50-59
NUMA node2 CPU(s): 20-29,60-69
NUMA node3 CPU(s): 30-39,70-79

查看监听器是否启用,查看监听状态:
//做两个测试,因为节点是两个,当前节点的监听器停止

[grid@sh02 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): shfpdb01

//启动监听器
[grid@sh02 ~]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 11-MAR-2022 16:30:59

Copyright (c) 1991, 2013, Oracle. All rights reserved.

Starting /u01/app/11.2.0/grid/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.2.0.4.0 - Production
System parameter file is /u01/app/11.2.0/grid/network/admin/listener.ora
Log messages written to /u01/app/grid/diag/tnslsnr/shfpdb02/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date 11-MAR-2022 16:30:59
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/grid/diag/tnslsnr/sh02/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
Services Summary...
Service "ht" has 1 instance(s).
Instance "ht", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

//重新查看本地监听器
[grid@sh02 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): sh02,sh01

//查看进程

[grid@sh02 ~]$ ps -efww |grep lsnr//注意这里的所属用户,否则你设置了密码保护之后,只能用所属用户登录后才能进行更改
grid 12854 1 0 15:46 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
grid 33921 31866 0 16:33 pts/0 00:00:00 grep lsnr

//我们进入oracle用户,尝试停止监听

[grid@sh02 ~]$ exit
logout
[root@sh02 ~]# su - oracle
[oracle@sh02 ~]$ lsnrctl stop

LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 11-MAR-2022 16:34:30

Copyright (c) 1991, 2013, Oracle. All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-01190: The user is not authorized to execute the requested listener command

 

lsnrctl命令常用参数详解:
1)start 启动指定的监听器
2)stop 关闭指定的监听器
3)status
显示监听器的状态。status命令显示监听器是不是活动的,日志与跟踪文件的位置,
监听器已经持续运行了多长时间,以及监听器所监听的任务。
4)services
列举监听器的服务信息,比如这些服务是否有任何专用的预生成服务器进程或与之相关的调度进程,以及每个服务已有多少连接被接受或拒绝。
这种方法用来检查一个监听器是否在监听一个指定服务。
列出服务的一个汇总表及为每个协议服务处理程序所建立和拒绝的连接信息个数。
5)Version 显示oracle net软件与协议适配器的版本。
6)reload 重新装入监听器,重新读取listener.ora文件,但不关闭监听器。如果该文件发生了变化,重新刷新监听器。
7)save_config 当从lsnrctl工具中对listener.ora文件进行了修改时,复制一个叫做listener.bak的listener.ora的文件。
8)trace 打开监听器的跟踪特性。
9)change_password 允许用户修改关闭监听器所需要的密码。
10)quit 退出lsnrctl工具。 set*
password
指定在lsnrctl命令行工具中执行管理任务所需要的密码。
trc_file
指定监听器跟踪信息的位置。默认设置是$ORACLE_HOME\network\trace\listener.trc trc_directory
trc_level
跟踪级别
OFF – 未启用跟踪功能。OFF 为默认设置。
USER – 将跟踪设置为用户的相应级别。跟踪以标识用户导致的错误条件。
ADMIN – 将跟踪设置为数据库管理员的相应级别。跟踪以标识特定的安装问题。
SUPPORT – 将跟踪设置为客户支持人员的相应级别。 跟踪文件可能会变得很大。
Oracle Corporation 建议在不进行网络问题诊断时关闭跟踪功能。 log_file
指定一个监听器将把日志信息写到哪里。这个参数在默认的情况下是ON,并默认为%oracle_home%\network\log\listener.log log_directory
log_status
current_listener
inbound_connect_timeout
定义监听器在一个会话得到启动时将等待的有效响应时间。默认设置为10秒。 startup_waittime
定义监听器在响应lsnrctl命令行工具中的一条status命令之前将等待多长时间。 save_config_on_stop
指定在一个lsnrctl会话期内所发生的修改在退出时是否应该被保存起来。 show命令

rawmode
显示关于status和service的较详细信息(当他们设置成on时)值为ON或OFF。 displaymode
把lsnrctl工具的显示模式设置成raw、compact、normal或verbose
服务显示模式为NORMAL rules
trc_file
指定监听器跟踪信息的位置。默认设置是$ORACLE_HOME\network\trace\listener.trc current_listener
目前的监听器为 listener2
inbound_connect_timeout
定义监听器在一个会话得到启动时将等待的有效响应时间。默认设置为10秒。 startup_waittime
定义监听器在响应lsnrctl命令行工具中的一条status命令之前将等待多长时间。 snmp_visible
save_config_on_stop
指定在一个lsnrctl会话期内所发生的修改在退出时是否应该被保存起来。
命令演示
LSNRCTL> help
The following operations are available
An asterisk (*) denotes a modifier or extended command: start stop status
services version reload
save_config trace spawn
change_password quit exit
set* show*
//change_password改变监听密码
//save_config 执行该命令后,会备份listenr.ora,同时设置到listenr.ora文件

LSNRCTL> version
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNSLSNR for Linux: Version 11.2.0.4.0 - Production
TNS for Linux: Version 11.2.0.4.0 - Production
Unix Domain Socket IPC NT Protocol Adaptor for Linux: Version 11.2.0.4.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production,,
The command completed successfully

LSNRCTL> status
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER  //监听器名为LISTENER  
------------------------
Alias LISTENER  //别名LISTENER  
Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production  //版本信息
Start Date 15-DEC-2021 11:18:18 //启动时间
Uptime 86 days 2 hr. 30 min. 23 sec  //正常运行
Trace Level off  //跟踪级别
Security ON: Local OS Authentication  //安全性
SNMP OFF
Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora  //监听程序参数文件
Listener Log File /u01/app/grid/diag/tnslsnr/sh02/listener/alert/log.xml  //监听程序log文件
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.128.51.21)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.128.51.24)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "fp" has 1 instance(s).
Instance "fp2", status READY, has 1 handler(s) for this service...
Service "ht" has 1 instance(s).
Instance "ht2", status UNKNOWN, has 1 handler(s) for this service...

LSNRCTL> show  或者 help show 
The following operations are available after show  //以下是有效的,跟在show命令之后,例如:show 
An asterisk (*) denotes a modifier or extended command:

rawmode displaymode   //
rules trc_file
trc_directory trc_level
log_file log_directory
log_status current_listener
inbound_connect_timeout startup_waittime
snmp_visible save_config_on_stop
dynamic_registration enable_global_dynamic_endpoint
oracle_home pid
connection_rate_limit valid_node_checking_registration
registration_invited_nodes registration_excluded_nodes

LSNRCTL> show trc_file
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-01190: The user is not authorized to execute the requested listener command

TNS-01190: 用户无权执行所请求的监听程序命令

LSNRCTL> show trc_directory
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-01190: The user is not authorized to execute the requested listener command

TNS-01190: 用户无权执行所请求的监听程序命令

Oracle lsnrctl设置密码
1、设置监听器的口令.默认口令为空.
LSNRCTL> change_password
2、设置session级别的密码,如果密码错误,不报错,也显示”命令执行成功”,但不能停止监听器.
LSNRCTL> set password
3、保存到配置文件,否则下次登陆,以前设置的密码无效.
LSNRCTL> save_config
lsnrctl 监听命令
[grid@sh02 ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 10-MAR-2022 20:21:04
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date 15-DEC-2021 11:18:18
Uptime 85 days 9 hr. 2 min. 46 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/grid/diag/tnslsnr/sh02/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.128.51.21)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.128.51.24)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s). //有一个服务未+ASM,数据库实例名为:+ASM2
Instance "+ASM2", status READY, has 1 handler(s) for this service... //状态ready说明是目前处于动态注册
Service "fp" has 1 instance(s).
Instance "fp2", status READY, has 1 handler(s) for this service...
Service "ht" has 1 instance(s).
Instance "ht2", status UNKNOWN, has 1 handler(s) for this service... //状态处于UNKNOWN表明处于静态注册
列举监听器的服务信息
[oracle@sh02 ~]$ lsnrctl services
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 11-MAR-2022 13:30:38
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "fp" has 1 instance(s).
Instance "fp2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:1791 refused:0 state:ready
LOCAL SERVER
//htcmsdb服务
Service "ht" has 1 instance(s).
Instance "ht2", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
The command completed successfully
三个监听文件
 [grid@sh02 ~]$ locate sqlnet.ora
/u01/app/11.2.0/grid/network/admin/sqlnet.ora
[grid@sh02 ~]$ locate tnsnames.ora/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
[grid@sh02 ~]$ locate listener.ora
/u01/app/11.2.0/grid/network/admin/listener.ora //查看监听文件

[oracle@sh02 ~]$ cat /u01/app/11.2.0/grid/network/admin/listener.ora
LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) #出一个监听器定义的起始点
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = htcmsdb)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1) //安装位置
(SID_NAME =htcmsdb2)   //oracle sid
)
)

监听文件的各个参数的作用描述如下:

LISTENER 指出一个监听器定义的起始点。它实际上是正被定义的当前监听器的名称。默认的名称是LISTENER。
DESCRIPTION 描述每个监听位置
ADDRESS_LIST 含有与监听器正在监听的那些位置有关的地址信息
PROTOCOL 指定用于本监听位置的协议
HOST     保存监听器所驻留在的那台计算机的名称
PORT     含有监听器正在上面监听的地址
SID_LIST_LISTENER 定义配置监听器所针对的ORACLE服务的列表
SID_DESC      描述每个Oracel SID
GLOBAL_DBNAME 标识全局数据库名称。本项应该与当前Oracle服务的 init.ora 文件中的SERVICE_NAMES项要一致
ORACLE_HOME   给出服务器上Oracle可执行程序的位置
SID_NAME      含有用于本Oracle实例的Oracle SID的名称

如果你对监听设置了密码

[oracle@sh02 ~]$ lsnrctl stop
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 11-MAR-2022 14:29:51
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-01190: The user is not authorized to execute the requested listener command
//不允许随便关闭监听

 由于集群采用的scan 监听器对外服务,所以这里要讲这块,远程访问时,如果关闭scan 监听就会找不到监听器,但是关闭本地监听器没有关系.

修改SCAN Listener的端口配置

[oracle@sh02 ~]$ ps -ef | grep -i tns
root 405 2 0 2021 ? 00:00:00 [netns]
grid 12854 1 0 15:46 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit

1、修改前,先检查一下SCAN及SCAN Listener 的配置情况:

[oracle@sh02 ~]$ srvctl config scan
SCAN name: sh-cluster-scan, Network: 1/10.128.51.0/255.255.255.0/eth0
SCAN VIP name: scan1, IP: /sh-cluster-scan/10.128.51.22

2、关闭SCAN Listener

[oracle@sh02 ~]$ srvctl stop scan_listener

3、检查是否被关闭

[oracle@sh02 ~]$ srvctl status scan_listener
SCAN Listener LISTENER_SCAN1 is enabled
SCAN listener LISTENER_SCAN1 is not running

客户端连接出现

4、修改端口
srvctl modify scan_listener -p 1526
srvctl modify scan_listener -endpoints 1526
5、检查修改是否生效

[oracle@sh02 ~]$ srvctl start scan
PRCC-1014 : scan1 was already running
PRCR-1004 : Resource ora.scan1.vip is already running
PRCR-1079 : Failed to start resource ora.scan1.vip
CRS-5702: Resource 'ora.scan1.vip' is already running on 'sh02'

[oracle@sh02 ~]$ srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:1521

6、启动SCAN Listener:
[oracle@sh02 ~]$ srvctl start scan_listener
//启动后,ps/sql能够正常登录
7、检查下,确保成功
srvctl status scan_listener
srvctl modify 命令除了能够修改SCAN端口,还可以修改SCAN的名字:
srvctl modify scan -n newname 停止和启动scan listener时要注意下

//我在oracle用户在执行启动scan listener

[oracle@sh02 ~]$ srvctl start scan_listener

//查看进程看不到scan
[oracle@sh02 ~]$ ps -ef | grep -i tns
root 405 2 0 2021 ? 00:00:00 [netns]
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit

//停止sacn_listener

[oracle@sh02 ~]$ srvctl stop scan_listener

//退出
[oracle@sh02 ~]$ exit
logout

//用grid用户登录
[root@sh02 ~]# su - grid
[grid@sh02 ~]$ srvctl stop scan_listener
PRCC-1016 : LISTENER_SCAN1 was already stopped
PRCR-1005 : Resource ora.LISTENER_SCAN1.lsnr is already stopped

//启动scan_listener

[grid@sh02 ~]$ srvctl start scan_listener
[grid@sh02 ~]$ ps -efww |grep lsnr
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
grid 42083 1 0 16:50 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 42195 41859 0 16:50 pts/0 00:00:00 grep lsnr
[grid@sh02 ~]$ ps -efww |grep tns
root 405 2 0 2021 ? 00:00:00 [netns]
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
grid 42083 1 0 16:50 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 42224 41859 0 16:50 pts/0 00:00:00 grep tns

//再回到oracle用户,这个时候就可以查看到

[oracle@sh02 ~]$ ps -ef | grep tns
root 405 2 0 2021 ? 00:00:00 [netns]
grid 32735 1 0 16:30 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
grid 42083 1 0 16:50 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
oracle 43393 43352 0 16:53 pts/0 00:00:00 grep tns

我们看看关闭本地监听器对本地登录是否有影响

//现在是关闭了本地和scan情况下
[oracle@sh02 ~]$ sqlplus sh/Sh12@10.128.51.22:1521/fp
SQL*Plus: Release 11.2.0.4.0 Production on Fri Mar 11 17:05:45 2022
Copyright (c) 1982, 2013, Oracle. All rights reserved.
ERROR:
ORA-12541: TNS:no listener
Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied
SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus
//启动scan

[oracle@sh02 ~]$ srvctl start scan_listener
[oracle@sh02 ~]$ sqlplus sh/Sh12@10.128.51.22:1521/fp

SQL*Plus: Release 11.2.0.4.0 Production on Fri Mar 11 17:08:23 2022

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL>

//关闭scan,启动本地,报错
所以一旦开启scan模式,则本地监听器是可有可无的.

oracle之lsnrctl命令的更多相关文章

  1. oracle 11g常用命令

    1.监听启动监听lsnrctl start停止监听 lsnrctl stop 查看监听状态 lsnrctl status 2.启动用oracle用户进入su - oracle运行sqlplus命令,进 ...

  2. 常用的Oracle的doc命令

    常用的Oracle的doc命令 1.连接数据库 普通用户连接数据库: conn scott/tiger --(默认的用户名/密码).conn 即"connection"连接数据库的 ...

  3. Oracle数据库常用命令整理

    转至:https://blog.csdn.net/creativemobile/article/details/8982164 1监听 (1)启动监听 lsnrctl start (2)停止监听  l ...

  4. Oracle手边常用命令及操作语句

    Oracle手边常用命令及操作语句 作者:白宁超 时间:2016年3月4日11:24:08 摘要:日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规操作. ...

  5. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

  6. oracle中imp命令具体解释

    oracle中imp命令具体解释 Oracle的导入有用程序(Import utility)同意从数据库提取数据,而且将数据写入操作系统文件.imp使用的基本格式:imp[username[/pass ...

  7. 使用oracle的exp命令时,提示出--hash: exp: command not found

    使用oracle的exp命令时,提示出--hash: exp: command not found 原因:当你在终端使用exp的命名时,当前的账户,并不是oracle认可的账户. 在安装oracle时 ...

  8. oracle数据库sqlldr命令的使用

    将数据导入 oracle 的方法应该很多 , 对于不同需求有不同的导入方式 , 最近使用oracle的sqlldr命令 导入数据库数据感觉是个挺不错的技术点 .  使用sqlldr命令 将文本文件导入 ...

  9. oracle备份imp命令大全

    oracle中imp命令详细解释 Oracle的导入有用程序(Import utility)同意从数据库提取数据,而且将数据写入操作系统文件.imp使用的基本格式:imp[username[/pass ...

随机推荐

  1. CSS性能优化的几个技巧

    前言 随着互联网发展至今,对于网站来说,性能显的越来越重要了,CSS作为页面渲染和内容展现的重要环节,影响着用户对整个网站的第一体验.所以,我们需要重视与CSS相关的性能优化. 项目开发初期我们可能因 ...

  2. 前端经典面试题vue面试题

    1.什么是MVVM? MVVM是一种设计思想. Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑: View 代表UI 组件,它负责将数据模型转化成UI 展现出来,View ...

  3. 字符串的高级应用-char a[100] = "1+2=;3-2=;2*5=;8/4=;" 得到char a[100] ="1+2=3;3-2=1;2*5=10;8/4=2;"

    1 #include<stdio.h> 2 #include<string.h> 3 4 int main() 5 { 6 char a[100] = "1+2=;3 ...

  4. CentOS停更;阿里发布全新操作系统(Anolis OS)

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 Linux系统对于Java程序员来说,就好比"乞丐手里的碗",任何业务都离不开他的身影,因为服务端的广泛使用,也因此衍生出了各种 ...

  5. Arch Linux 系统迁移

    镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 备份 Arch Linux 系统 安装 pigz 使用 pigz 多线程压缩比使用 tar 单线程压缩速度明显提升多倍 sudo pacman ...

  6. Docker修改默认IP

    Docker修改默认IP 删除原有配置 sudo systemctl stop docker sudo ip link set dev docker0 down sudo brctl delbr do ...

  7. DHCP协议简析

    推荐这篇文章,原理及抓包都分析的很好: **推荐这篇文章,原理及抓包都分析的很好:** https://blog.csdn.net/andy_93/article/details/78238931 简 ...

  8. 5月16日 python学习总结 DBUtils模块、orm 和 cookie、session、token

    一.DBUtils模块 介绍 The DBUtils suite is realized as a Python package containing two subsets of modules, ...

  9. PowerSploit的使用

    Invoke-Mimikatz(依赖管理员) Import-Module .\invoke-mimikatz.ps1 Invoke-Mimikatz –DumpCreds 使用Invoke-Mimik ...

  10. sqli-labs下载与安装

    Sqli-labs 下载 Sqli-labs是一个印度程序员写的,用来学习sql注入的一个游戏教程. 博客地址为:http://dummy2dummies.blogspot.hk/, 博客当中有一些示 ...