linux下达梦数据库启动_linux 平台 达梦DM 7 数据库 启动与关闭

在之前的博客我们了解了Linux 平台下DM7的安装,如下:

在本篇博客里我们了解一下DM7的启动和关闭。

1 背景知识说明

1.1 DM DB的启动过程

DM的启动主要按如下三个步骤进行:

1.读取配置文件(.ini)

2.读取控制文件(dm.ctl)

3.读取重做日志文件(.log) 和 数据文件(*.DBF)

https://www.cndba.cn/dave/article/3566

1.2 DM DB的状态

DM 数据库包含以下几种状态:

配置状态(MOUNT):不允许访问数据库对象,只能进行控制文件维护、归档配置、数据库模式修改等操作;

打开状态(OPEN):不能进行控制文件维护、归档配置等操作,可以访问数据库对象,对外提供正常的数据库服务;

挂起状态(SUSPEND):与 OPEN 状态的唯一区别就是,限制磁盘写入功能;一旦修改了数据页,触发 REDO 日志、数据页刷盘,当前用户将被挂起。

OPEN 状态与 MOUNT 和 SUSPEND 能相互转换,但是 MOUNT 和 SUSPEND 之间不能相互转换。

1.3 DM DB的模式

DM 数据库包含以下几种模式:

普通模式(NORMAL):用户可以正常访问数据库,操作没有限制;

主库模式(PRIMARY):用户可以正常访问数据库,所有对数据库对象的修改强制生成 REDO 日志,在归档有效时,发送 REDO 日志到备库;

备库模式(STANDBY):接收主库发送过来的 REDO 日志并重做。数据对用户只读。

三种模式只能在 MOUNT 状态下设置,模式之间可以相互转换。

对于新初始化的库,首次启动不允许使用 mount 方式,需要先正常启动并正常退出,然后才允许 mount 方式启动。

一般情况下,数据库为 NORMAL 模式,如果不指定 MOUNT 状态启动,则自动启动到 OPEN 状态。

在需要对数据库配置时(如配置数据守护、数据复制),服务器需要指定 MOUNT 状态启动。当数据库模式为非 NORMAL 模式(PRIMARY、STANDBY 模式),无论是否指定启动状态,服务器启动时自动启动到 MOUNT 状态。

1.4 DM DB的三种启动和关闭方式

启动和关闭DM DB有三种方式:

1.4.1 DM服务查看器

Windows可以通过菜单目录查看。 Linux 平台需要运行/dm/dmdbms/tool/dmservice.sh 启动。 如下图:

1.4.2 系统服务

在实例安装结束之后会创建,在操作系统直接对实例服务进行操作。Windows 则是直接在服务窗口进行。https://www.cndba.cn/dave/article/3566https://www.cndba.cn/dave/article/3566

启动:systemctl start DmServicedave.service

关闭:systemctl stop DmServicedave.service

我这里的测试平台是Linux7, Linux 6和 7 的在服务这块有一点区别:

在Linux 6中,服务是放在/etc/rc.d/init.d目录下,会有一个”DmService+实例名”的文件服务文件,启动和关闭是执行service “DmServer+实例名” stop|start。

在Linux 7中,服务文件存放在/usr/lib/systemd/system目录下,名称改成:DmServicedave.service。

1.4.3 命令行模式

命令行模式使用dmserver命令来启动和关闭实例。该命令在DM_HOME/bin目录下。 https://www.cndba.cn/dave/article/3566

命令行方式启动参数如下:

dmserver [ini_file_path] [-noconsole] [mount]

说明:

1. Dmserver 命令行启动参数可指定 dm.ini 文件的路径,非控制台方式启动及指定数据库是否以 MOUNT 状态启动。

2. Dmserver 启动时可不指定任何参数,默认使用当前目录下的 dm.ini 文件,如果当前目录不存在 dm.ini 文件,则无法启动;

3. Dmserver 启动时可以指定-noconsole 参数。如果以此方式启动,则无法通过在控制台中输入服务器命令。

当不确定启动参数的使用方法时,可以使用 help 参数,将打印出格式、参数说明和使用示例。使用方法如下:

dmserver help

当以控制台方式启动 Dmserver 时,用户可以在控制台输入一些命令,服务器将在控制台打印出相关信息或执行相关操作。

1.4.4 命令行方式和其他两种方式的区别

命令行方式默认也是将数据库启动到open状态,但也可以在启动时指定启动到mount状态,从而可以维护开文件、进程归档配置、数据库普通模式或主备机模式切换等操作。 在进行备份恢复时也常用命令行模式启动。https://www.cndba.cn/dave/article/3566

https://www.cndba.cn/dave/article/3566

2 操作示例

2.1 查看DM DB的状态

DB的状态通过DM服务查看器可以直接看到,也可以通过查看系统服务状态来查看,如下:https://www.cndba.cn/dave/article/3566

[dave@www.cndba.cn system]$ systemctl status DmServicedave

● DmServicedave.service - DM database instance service

Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)

Active: active (exited) since Fri 2029-02-23 01:37:37 CST; 10h ago

Process: 24621 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=0/SUCCESS)

Main PID: 24621 (code=exited, status=0/SUCCESS)

Tasks: 0

CGroup: /system.slice/DmServicedave.service

[dave@www.cndba.cn system]$

通过disql来查看:

[dave@www.cndba.cn ~]$ disql SYSDBA/SYSDBA

Server[LOCALHOST:5236]:mode is normal, state is open

login used time: 14.097(ms)

disql V7.6.0.145-Build(2019.03.20-104220)ENT

SQL> select status$ from v$database;

LINEID STATUS$

---------- -----------

1 4

used time: 8.850(ms). Execute id is 2197.

SQL>

这里是用数字来表示状态的,这里一共有6种状态,如下:

1:启动;2:启动,redo 完成;3:MOUNT;4:打开;5:挂起;6:关闭

2.2 使用系统服务来启动和关闭DM 实例

[root@dm1 ~]# systemctl stop DmServicedave

[root@dm1 ~]# systemctl status DmServicedave

● DmServicedave.service - DM database instance service

Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)

Active: inactive (dead) since Fri 2029-02-23 12:34:40 CST; 7s ago

Process: 2561 ExecStop=/dm/dmdbms/bin/DmServicedave stop (code=exited, status=0/SUCCESS)

Process: 741 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=0/SUCCESS)

Main PID: 741 (code=exited, status=0/SUCCESS)

Feb 23 12:26:16 dm1 systemd[1]: Starting DM database instance service...

Feb 23 12:26:16 dm1 su[824]: (to dmdba) root on none

Feb 23 12:26:19 dm1 DmServicedave[741]: Starting DmServicedave: Last login: Fri Feb 23 12:10:04 CST 2029 on pts/6

Feb 23 12:26:34 dm1 DmServicedave[741]: [11B blob data]

Feb 23 12:26:34 dm1 systemd[1]: Started DM database instance service.

Feb 23 12:34:35 dm1 systemd[1]: Stopping DM database instance service...

Feb 23 12:34:40 dm1 DmServicedave[2561]: [35B blob data]

Feb 23 12:34:40 dm1 systemd[1]: Stopped DM database instance service.

[root@dm1 ~]# systemctl start DmServicedave

[root@dm1 ~]# systemctl status DmServicedave

● DmServicedave.service - DM database instance service

Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)

Active: active (exited) since Fri 2029-02-23 12:35:12 CST; 1s ago

Process: 2561 ExecStop=/dm/dmdbms/bin/DmServicedave stop (code=exited, status=0/SUCCESS)

Process: 2621 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=0/SUCCESS)

Main PID: 2621 (code=exited, status=0/SUCCESS)

Feb 23 12:34:57 dm1 systemd[1]: Starting DM database instance service...

Feb 23 12:34:57 dm1 su[2641]: (to dmdba) root on none

Feb 23 12:34:57 dm1 DmServicedave[2621]: Starting DmServicedave: Last login: Fri Feb 23 12:28:13 CST 2029 on pts/1

Feb 23 12:35:12 dm1 DmServicedave[2621]: [11B blob data]

Feb 23 12:35:12 dm1 systemd[1]: Started DM database instance service.

[root@dm1 ~]#

[root@dm1 ~]# ps -ef|grep dm.ini

dmdba 2662 1 0 12:34 ? 00:00:00 /dm/dmdbms/bin/dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole

root 2765 2026 0 12:36 pts/0 00:00:00 grep --color=auto dm.ini

[root@dm1 ~]#

2.3 使用命令行管理DB

前面提到命令行直接使用命令操作。 dmserver 启动命令行窗口一直在,启动后直接输入exit即表示关闭实例。如果加上-noconsole选项,则不接受任何指令,可以直接按Ctrl+c 来终止程序并停止数据库。

[dave@www.cndba.cn ~]$ /dm/dmdbms/bin/dmserver /dm/dmdbms/data/cndba/dm.ini

file dm.key not found, use default license!

version info: develop

Use normal os_malloc instead of HugeTLB

Use normal os_malloc instead of HugeTLB

DM Database Server x64 V7.6.0.145-Build(2019.03.20-104220)ENT startup...

License will expire on 2029-03-09

ckpt lsn: 61183

ndct db load finished

ndct fill fast pool finished

set EP[0]'s pseg state to inactive

iid page's trxid = 2600

NEXT TRX ID = 2601

pseg recv finished

nsvr_startup end.

aud sys init success.

aud rt sys init success.

systables desc init success.

ndct_db_load_info success.

nsvr_process_before_open begin.

nsvr_process_before_open success.

SYSTEM IS READY.

#输入其他指令,可以通过dmserver help 查看:

lock

----------------- object lock info ---------------

addr objid mode trx wait

>> 0 object locks.

------------------- tid lock info ----------------

addr objid mode trx wait

>> 0 object locks.

-----------------outer object lock info (dbms_lock)---------------

addr objid mode sess wait_sess

#输入exit 关闭实例

exit

Server is stopping...

listener closed and all sessions disconnected

purge undo records in usegs...OK

full check point starting...

generate force checkpoint, rlog free space, used space is (536457216, 405504)

ckpt_lsn, ckpt_fil, ckpt_off are set as (66044, 0, 10398720)

checkpoint: 3878 pages flushed.

checkpoint finished, rlog free space, used space is (536600064, 262656)

full check point end.

shutdown audit subsystem...OK

shutdown schedule subsystem...OK

shutdown timer successfully.

pre-shutdown MAL subsystem...OK

shutdown worker threads subsystem...OK

shutdown local parallel threads pool successfully.

shutdown replication subsystem...OK

shutdown sequence cache subsystem...OK

wait for mtsk link worker to exit..OK

shutdown mpp session subsystem...OK

wait for rapply is all over... OK

rapply worker threads exit successfully.

pre ending task & worker threads...OK

shutdown dblink subsystem...OK

shutdown session subsystem...OK

shutdown rollback segments purging subsystem...OK

shutdown rps subsystem...OK

shutdown transaction subsystem...OK

shutdown locking subsystem...OK

shutdown dbms_lock subsystem...OK

ending tsk and worker threads...OK

ckpt2_exec_immediately begin.

ckpt_lsn, ckpt_fil, ckpt_off are set as (66048, 0, 10661376)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536680448, 182272)

ckpt_lsn, ckpt_fil, ckpt_off are set as (70401, 0, 10843648)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862208, 512)

ckpt_lsn, ckpt_fil, ckpt_off are set as (70401, 0, 10844160)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862720, 0)

ckpt_lsn, ckpt_fil, ckpt_off are set as (70401, 0, 10844160)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862720, 0)

shutdown archive subsystem...OK

shutdown redo log subsystem...OK

shutdown MAL subsystem...OK

shutdown message compress subsystem successfully.

shutdown task subsystem...OK

shutdown trace subsystem...OK

shutdown svr_log subsystem...OK

shutdown plan cache subsystem...OK

shutdown file subsystem...OK

shutdown database dictionary subsystem...OK

shutdown mac cache subsystem...OK

shutdown dynamic login cache subsystem...OK

shutdown ifun/bifun/sfun/afun cache subsystem...OK

shutdown crypt subsystem...OK

shutdown pipe subsystem...OK

shutdown compress component...OK

shutdown slave redo subsystem...OK

shutdown kernel buffer subsystem...OK

shutdown SQL capture subsystem...OK

shutdown control file system...OK

shutdown dtype subsystem...OK

shutdown huge buffer and memory pools...OK

close lsnr socket

DM Database Server shutdown successfully.

[dave@www.cndba.cn ~]$

#启动到mount状态:

[dave@www.cndba.cn ~]$ dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole mount

file dm.key not found, use default license!

version info: develop

Use normal os_malloc instead of HugeTLB

Use normal os_malloc instead of HugeTLB

DM Database Server x64 V7.6.0.145-Build(2019.03.20-104220)ENT startup...

License will expire on 2029-03-09

ckpt lsn: 126426

ndct db load finished

ndct fill fast pool finished

nsvr_startup end.

aud sys init success.

aud rt sys init success.

systables desc init success.

ndct_db_load_info success.

SYSTEM IS READY.

以服务模式启动DB实例且不接收指令:

https://www.cndba.cn/dave/article/3566

/dm/dmdbms/bin/dmserver /dm/dmdbms/data/cndba/dm.ini -noconsolehttps://www.cndba.cn/dave/article/3566

使用命令行的方式启动DB缺点很明显,窗口必须一致存在,尝试将将命令放到后台执行:

https://www.cndba.cn/dave/article/3566

/dm/dmdbms/bin/dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole &

实际测试发现一个问题,通过系统service 启动的实例,状态可以在DM service viewer中正确识别,但用命令行启动的实例,状态无法在系统服务和DM 服务查看中正确显示,也无法进行操作,也就是说,命令行启动的实例,只能通过命令行来关闭。 不过这个并不影响,可以直接使用linux 的fg命令将后台进程调到前台,在正常操作即可。 不建议直接在操作系统级别kill 进程。

#使用命令行启动后系统服务无法获取正确的状态:

[root@dm1 ~]# systemctl status DmServicedave

● DmServicedave.service - DM database instance service

Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)

Active: inactive (dead) since Fri 2029-02-23 12:38:36 CST; 42min ago

Process: 2788 ExecStop=/dm/dmdbms/bin/DmServicedave stop (code=exited, status=0/SUCCESS)

Process: 2621 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=0/SUCCESS)

Main PID: 2621 (code=exited, status=0/SUCCESS)

Feb 23 12:34:57 dm1 systemd[1]: Starting DM database instance service...

Feb 23 12:34:57 dm1 su[2641]: (to dmdba) root on none

Feb 23 12:34:57 dm1 DmServicedave[2621]: Starting DmServicedave: Last login: Fri Feb 23 12:28:13 CST 2029 on pts/1

Feb 23 12:35:12 dm1 DmServicedave[2621]: [11B blob data]

Feb 23 12:35:12 dm1 systemd[1]: Started DM database instance service.

Feb 23 12:38:26 dm1 systemd[1]: Stopping DM database instance service...

Feb 23 12:38:36 dm1 DmServicedave[2788]: [35B blob data]

Feb 23 12:38:36 dm1 systemd[1]: Stopped DM database instance service.

[root@dm1 ~]#

#后台启动实例,并使用fg命令调用到前台:

[dave@www.cndba.cn ~]$ dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole &

[1] 5435

[dave@www.cndba.cn ~]$ file dm.key not found, use default license!

version info: develop

Use normal os_malloc instead of HugeTLB

Use normal os_malloc instead of HugeTLB

DM Database Server x64 V7.6.0.145-Build(2019.03.20-104220)ENT startup...

License will expire on 2029-03-09

ckpt lsn: 117208

ndct db load finished

ndct fill fast pool finished

set EP[0]'s pseg state to inactive

iid page's trxid = 2621

NEXT TRX ID = 2622

pseg recv finished

nsvr_startup end.

aud sys init success.

aud rt sys init success.

systables desc init success.

ndct_db_load_info success.

nsvr_process_before_open begin.

nsvr_process_before_open success.

SYSTEM IS READY.

#将命令调用到前台

[dave@www.cndba.cn ~]$ jobs -l

[1]+ 5435 Running dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole &

[dave@www.cndba.cn ~]$ fg 1

dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole

exit

^CServer is stopping...

listener closed and all sessions disconnected

purge undo records in usegs...OK

full check point starting...

generate force checkpoint, rlog free space, used space is (536457216, 405504)

ckpt_lsn, ckpt_fil, ckpt_off are set as (122069, 0, 14882304)

checkpoint: 3232 pages flushed.

checkpoint finished, rlog free space, used space is (536602624, 260096)

full check point end.

shutdown audit subsystem...OK

shutdown schedule subsystem...OK

shutdown timer successfully.

pre-shutdown MAL subsystem...OK

shutdown worker threads subsystem...OK

shutdown local parallel threads pool successfully.

shutdown replication subsystem...OK

shutdown sequence cache subsystem...OK

wait for mtsk link worker to exit..OK

shutdown mpp session subsystem...OK

wait for rapply is all over... OK

rapply worker threads exit successfully.

pre ending task & worker threads...OK

shutdown dblink subsystem...OK

shutdown session subsystem...OK

shutdown rollback segments purging subsystem...OK

shutdown rps subsystem...OK

shutdown transaction subsystem...OK

shutdown locking subsystem...OK

shutdown dbms_lock subsystem...OK

ending tsk and worker threads...OK

ckpt2_exec_immediately begin.

ckpt_lsn, ckpt_fil, ckpt_off are set as (122073, 0, 15142400)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536680448, 182272)

ckpt_lsn, ckpt_fil, ckpt_off are set as (126426, 0, 15324672)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862208, 512)

ckpt_lsn, ckpt_fil, ckpt_off are set as (126426, 0, 15325184)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862720, 0)

ckpt_lsn, ckpt_fil, ckpt_off are set as (126426, 0, 15325184)

checkpoint: 0 pages flushed.

checkpoint finished, rlog free space, used space is (536862720, 0)

shutdown archive subsystem...OK

shutdown redo log subsystem...OK

shutdown MAL subsystem...OK

shutdown message compress subsystem successfully.

shutdown task subsystem...OK

shutdown trace subsystem...OK

shutdown svr_log subsystem...OK

shutdown plan cache subsystem...OK

shutdown file subsystem...OK

shutdown database dictionary subsystem...OK

shutdown mac cache subsystem...OK

shutdown dynamic login cache subsystem...OK

shutdown ifun/bifun/sfun/afun cache subsystem...OK

shutdown crypt subsystem...OK

shutdown pipe subsystem...OK

shutdown compress component...OK

shutdown slave redo subsystem...OK

shutdown kernel buffer subsystem...OK

shutdown SQL capture subsystem...OK

shutdown control file system...OK

shutdown dtype subsystem...OK

shutdown huge buffer and memory pools...OK

close lsnr socket

DM Database Server shutdown successfully.

[dave@www.cndba.cn ~]$

2.4 切换实例状态

SQL> select status$ from v$database;

Server[LOCALHOST:5236]:mode is normal, state is open

connected

LINEID STATUS$

---------- -----------

1 4

used time: 7.105(ms). Execute id is 3.

SQL> alter database mount;

executed successfully

used time: 00:00:01.878. Execute id is 0.

SQL> select status$ from v$database;

LINEID STATUS$

---------- -----------

1 3

used time: 2.155(ms). Execute id is 4.

SQL>

其他修改选项可以参考官方手册:

ALTER DATABASE ;

::=

RESIZE LOGFILE TO |

ADD LOGFILE {,}|

RENAME LOGFILE {,} TO {,}|

MOUNT |

SUSPEND |

OPEN [FORCE] |

NORMAL |

PRIMARY|

STANDBY |

ARCHIVELOG |

NOARCHIVELOG |

ARCHIVELOG |

ARCHIVELOG CURRENT

::= SIZE

::= 'DEST = ,TYPE = '

::=

LOCAL [] |

REALTIME|

SYNC |

ASYNC ,TIMER_NAME = |

REMOTE ,ARCH_INCOMING_PATH = []|

TIMELY

::=[,FILE_SIZE = ][,SPACE_LIMIT = ]

版权声明:本文为博主原创文章,未经博主允许不得转载。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

a与a:link、a:visited、a:hover、a:active

起因: a与a:link的CSS代码处,忽觉茫茫然不知所以然:这a的CSS和a:link什么关系?貌似有些冲突啊?还有这a:link、 a:visited、a:hover、a:active伪类之间有没有相互制约和继承关系? 过程: 使用软件…

dpdk18.11 收发包流程分析

pci probe RTE_PMD_REGISTER_PCI(net_ixgbe, rte_ixgbe_pmd); 宏注册了net_ixgbe driver到pci bus rte_ixgbe_pmd 的定义如下 static struct rte_pci_driver rte_ixgbe_pmd {.id_table pci_id_ixgbe_map,.drv_flags RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,.pr…

人工智能芯片龙头之一gti概念股_AI芯片龙头寒武纪IPO价格定了!概念股全名单收好...

寒武纪披露首次公开发行股票并在科创板上市发行公告,确定发行价格为64.39元/股,本次科创板上市发行剔除无效报价和最高报价后剩余报价拟申购总量为3,405,910万股,整体申购倍数为回拨前网下初始发行规模的1327.12倍。战略配售投资者包含中信证…

x86汇编语言-从实模式到保护模式----第五章

注释由;开始。将显存映射到地址空间里,0xB8000~0xBFFFF。Intel的处理器不允许将一个立即数传送到段寄存器,只允许这样的指令:mov 段寄存器,通用寄存器 mov 段寄存器,内存单元 为了方便,多数汇编语言编译器允…

Java面向对象(3) —— 抽象类、接口、内部类、匿名内部类

目录抽象类(abstract)抽象类的使用方法抽象类的应用:模板方法模式接口接口的概念接口的特点接口的使用接口实现与抽象类继承的区别接口的多继承内部类概念成员内部类(使用较多)及应用创建成员内部类的实例在成员内部类…

Kohana和Zencart

2019独角兽企业重金招聘Python工程师标准>>> 我有一个Kohana php框架但是客户求和zencart系统结合。我有一个想法是Kohana重新zencart 有没有人用过?应该没有吧 Kohana 是一款纯 PHP5 的框架,基于 MVC 模式开发, 它的特点就是高安…

Linux stmac网卡代码分析 -- open

Open stmmac_open是在stmmac_netdev_ops结构体里的,这个ops在probe时就已经注册到了net_device结构体里,在网卡对于stmmac_open函数调用的时间我还不确定是否是在网卡link up时 下面看看stmmac_open函数,文件位置: drivers/net/…

g++ linux 编译开栈_方舟编译器编译hello world踩坑全记录

闲来无事,看到方舟编译器完整开源,于是打算拿来试着编译一个东西来,接下来把踩过的一些坑记录一下。参考文档方舟编译器的官网是OpenArkCompiler​www.openarkcompiler.cn但是这个网站上的文档其实是过时的,没有更新过的&#xff…

绘制自定义键盘

先看下微信当中的自带的数字键盘 这种实现方式比较简单,可以直接用inline-block标签,设置每行平均宽度,比如一行要放4个按钮,可以那么宽度就可以设为25%,同时要注意设置css样式为box-sizing: border-box,这样在设置边框…

配置管理小报100329:脚本中ftp命令无法自动输入密码怎么办?

为什么80%的码农都做不了架构师?>>> 知识点: 作者:王(zbwangjian.cn) 脚本中ftp命令无法自动输入密码怎么办?参考: http://www.linji.cn/post/1620/ http://www.hamo…

linux下使用网易邮箱发邮件

0x0 最近要写个脚本监视系统运行情况,有异常及时通过邮件通知我。 本次测试中使用网易的邮箱作为邮件发送服务器(邮箱账号需要开启smtp服务如下图),由于网易邮箱验证比较严格,需要进行一些额外操作才可以正常发送邮件…

Java面向对象(4) ——多态

目录多态的概念对象上下转型多态应用之打印机多态的概念 多态是指同一个操作作用于某一类对象,可以有不同的解释,产生不同的执行结果。比如:猫吃鱼、狗吃肉、人吃米饭。 多态存在的三个必要条件: 需要存在继承(extends&#xf…

ffmpeg 转换flv压缩大小_ffmpeg转换参数和压缩输出大小的比率 参考 最新版本FFMPEG...

https://blog.cnlabs.NET/3668.htmlffmpeg 转换压缩比例FFMPEG如果是压缩为FLV文件 3个编码可选1. -c:v flv 标准FLV编码 这个好处是速度快 清晰度高的话 视频文件会比较大2. -c:v vp6 VP6编码 这个大家都很少使用 其实这个也算不错3. -c:v libx264 H.264编码 估计使用这个的比…

Git 常用命令清单,掌握这些,轻松驾驭版本管理

GitHub 地址&#xff0c;欢迎star&#xff0c;查看更多整理的前端知识点 工程下载、分支的增删查改 工程下载&#xff1a; clone 远程工程&#xff1a;git clone https://XXXX.gitfetch 远程分支到本地某分支&#xff1a;git fetch origin <orginname>:<localname>…

【运维囧事】运维的苦乐之旅

人生就是一段充满苦与乐的旅程&#xff0c;在人生当中有痛苦也有欢乐&#xff0c;痛苦不一定是负面的&#xff0c;有的时候还会使你进步&#xff0c;增强应变能力。对一般人而言&#xff0c;人生一定要是快乐的才是有意义的&#xff0c;可是你仔细想想&#xff0c;有谁不是因为…

ubuntu下网易云音乐适配高分辨率屏幕

0x0 环境 ubuntu20处理器 AMD 我主流工作环境是Ubuntu20&#xff0c;而且很依赖音乐&#xff0c;网易云音乐适配了Ubuntu&#xff0c;而最近我换了个4K屏幕 开机启动网易云音乐后发现界面文字变得很小完全没法看&#xff0c;如下图 分析发现网易云音乐是通过 /opt/netease/ne…

Java基础 —— 异常

目录异常的概念及分类异常的处理try-catch-finally异常抛出throw(s)自定义异常异常的概念及分类 什么是异常 异常是指在程序的运行过程中发生的一些不正常事件。比如&#xff1a;除0溢出、数组下标越界、所要读取的文件不存在。 异常导致的后果 项目JAVA程序的执行过程中如出现…

excel函数去重_excel去重函数

在日常工作问题中&#xff0c;经常会遇到一个问题&#xff0c;当你呼哧呼哧处理了大半天的数据后才发现&#xff0c;原始数据好多重复的&#xff0c;导致你得到的结果全部错误……顿时&#xff0c;想砍人的心都有了&#xff0c;心理阴影面积无穷大……当然&#xff0c;胖斯基也…

解决网站请求速度慢的一些方法

开门见山&#xff0c;网站请求反应速度慢首先考虑服务器问题。 我在开发中遇到的就是服务器实例限制cpu占用10%以内访问正常&#xff0c;超出则限制访问速度&#xff0c;也就是网站请求速度慢 具体和阿里工程师聊天截图如下&#xff1a; 按照对方说的&#xff0c;升级了相关配置…

Windows Server 2012 在个人终端上使用的推荐设置

Windows Server 2012&#xff0c;也就是 Windows 8 的服务器版本&#xff0c;相对于 Windows 8 企业版而言&#xff0c;增强了作为服务器的功能&#xff0c;弱化了作为终端系统的功能。   目前微软官方提供了 Windows 8 企业版&#xff08;90 天评估期&#xff09;和 Windows…