Oracle Dataguard(主库为 Oracle 11g 单节点)配置详解(2):配置主数据库

Oracle Dataguard(主库为 Oracle 11g 单节点)配置详解(2):配置主数据库

目录

  • Oracle Dataguard(主库为 Oracle 11g 单节点)配置详解(2):配置主数据库
    • 一、配置环境
    • 二、安装 Oracle 软件并创建数据库
    • 三、配置主数据库
        • 1、启动 FORCE LOGGING
        • 2、启动归档模式
        • 3、开启闪回
        • 4、为主库添加 standby redo logfile
        • 5、为主数据库配置监听
        • 6、修改主数据库的配置文件
        • 7、把主数据库的口令文件复制到备库

一、配置环境

操作系统为 CentOS7,Oracle 版本为 11g,主库为单机版 Oracle。详细情况如下表所示:

主库备库
DB 类型单机单机
操作系统Centos7.3Centos7.3
Hostnameoraoradg
IP 地址192.168.1.2192.168.1.3
ORACLE_BASE/usr/local/oracle/usr/local/oracle
DB_NAMEhisdbhisdbdg
ORACLE_SIDoraoradg
DB_Unique_Namehisdbhisdbdg
Instance_Nameoraoradg
service_nameshisdbhisdbdg
TNS_Namehisdbhisdbdg
闪回区开启开启
归档开启开启

二、安装 Oracle 软件并创建数据库

1、在主库上安装数据库软件,创建数据库,创建监听(安装过程省略)

2、在备库上安装数据库软件,创建监听,但不创建实例

主库的数据库参数如下:

SQL> show parameter nameNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
cell_offloadgroup_name		     string
db_file_name_convert		     string
db_name 			     string	 hisdb
db_unique_name			     string	 hisdb
global_names			     boolean	 FALSE
instance_name			     string	 ora
lock_name_space 		     string
log_file_name_convert		     string
processor_group_name		     string
service_names			     string	 hisdb

三、配置主数据库

1、启动 FORCE LOGGING

命令如下:

SQL> select open_mode,log_mode,database_role from v$database;OPEN_MODE	     LOG_MODE	  DATABASE_ROLE
-------------------- ------------ ----------------
READ WRITE	     NOARCHIVELOG PRIMARYSQL> select force_logging from v$database;FOR
---
NOSQL> alter database force logging;Database altered.SQL> select force_logging from v$database;FOR
---
YES
2、启动归档模式
-- 查询归档模是否开启
SQL> archive log list;
Database log mode	       No Archive Mode
Automatic archival	       Disabled
Archive destination	       USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     5
Current log sequence	       7-- 关闭数据库
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.-- 开启数据库至 mount 状态
SQL> startup mount;
ORACLE instance started.Total System Global Area 1068937216 bytes
Fixed Size		    2260088 bytes
Variable Size		  331350920 bytes
Database Buffers	  729808896 bytes
Redo Buffers		    5517312 bytes
Database mounted.-- 修改数据库为归档模式
SQL> alter database archivelog;Database altered.-- 开启数据库
SQL> alter database open;Database altered.-- 查看归档日志是否开启
SQL> archive log list;
Database log mode	       Archive Mode
Automatic archival	       Enabled
Archive destination	       USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     5
Next log sequence to archive   7
Current log sequence	       7SQL> show  parameter recoveryNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest		     string	 /usr/local/oracle/fast_recovery_area
db_recovery_file_dest_size	     big integer 4182M
recovery_parallelism		     integer	 0
3、开启闪回
 -- 查看闪回未开启
SQL> select flashback_on from v$database;FLASHBACK_ON
------------------
NO-- 查看 db_recovery_file_dest
SQL> show parameter recoveryNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest		     string	 /usr/local/oracle/fast_recovery_area
db_recovery_file_dest_size	     big integer 4182M
recovery_parallelism		     integer	 0-- 指定闪回区大小,指定闪回目录路径(顺序必须先设置闪回区大小,才能指定闪回目录,否则报错)
alter system set db_recovery_file_dest_size=4182m;
-- 先创建目录,再指定该闪回区域目录
alter system set db_recovery_file_dest='/usr/local/oracle/fast_recovery_area';-- 开启闪回
SQL> alter database flashback on;Database altered.-- 查看闪回未开启
SQL> select flashback_on from v$database;FLASHBACK_ON
------------------
YES
4、为主库添加 standby redo logfile

说明:

(1)为主库添加standby redo log后,备库自动同步,所以备库不用再创建standby redo log

(2)Dataguard 在最大保护和最高可用性模式下,Standby 数据库必须配置standby redo log

(3)确保 Standby redo log的大小与主库 online redo log的大小一致。

(4)如果主库为单实例数据库: Standby redo log组数 = 主库日志总数 + 1。

(5)如果主库是RAC数据库:Standby redo log组数 = (每线程的日志数 + 1)* 最大线程数。

查看主数据库的日志信息:

-- 查看日志存放位置
SQL> select member from v$logfile;MEMBER
--------------------------------------------------------------------------------
/usr/local/oradata/hisdb/redo03.log
/usr/local/oradata/hisdb/redo02.log
/usr/local/oradata/hisdb/redo01.log-- 查看日志数量
SQL> select count(group#),thread# from v$log group by thread#;COUNT(GROUP#)	 THREAD#
------------- ----------3	       1-- 查看日志文件大小
SQL> select group#,bytes/1024/1024 from v$log;GROUP# BYTES/1024/1024
---------- ---------------1		502		503		50

添加 standby logfile

 -- 添加 4 个standby logfile,文件大小必须为 50M
/*
alter database add standby logfile '/usr/local/oradata/hisdb/standby01.log' size 50M;
alter database add standby logfile '/usr/local/oradata/hisdb/standby02.log' size 50M;
alter database add standby logfile '/usr/local/oradata/hisdb/standby03.log' size 50M;
alter database add standby logfile '/usr/local/oradata/hisdb/standby04.log' size 50M;
*/SQL> alter database add standby logfile '/usr/local/oradata/hisdb/standby01.log' size 50M;Database altered.SQL> alter database add standby logfile '/usr/local/oradata/hisdb/standby02.log' size 50M;Database altered.SQL> alter database add standby logfile '/usr/local/oradata/hisdb/standby03.log' size 50M;Database altered.SQL> alter database add standby logfile '/usr/local/oradata/hisdb/standby04.log' size 50M;Database altered.-- 查看 standby_log 信息
SQL> select group#,bytes/1024/1024 from v$standby_log;GROUP# BYTES/1024/1024
---------- ---------------4		505		506		507		50-- 查看所有的日志信息
SQL> select group#,status,type,member from v$logfile;GROUP# STATUS  TYPE            MEMBER
-----------------------------------------------------------------------------------------3	   ONLINE            /usr/local/oradata/hisdb/redo03.log2	   ONLINE           /usr/local/oradata/hisdb/redo02.log1	   ONLINE           /usr/local/oradata/hisdb/redo01.log4	   STANDBY          /usr/local/oradata/hisdb/standby01.log5	   STANDBY          /usr/local/oradata/hisdb/standby02.log6	   STANDBY          /usr/local/oradata/hisdb/standby03.log7	   STANDBY          /usr/local/oradata/hisdb/standby04.log7 rows selected.
5、为主数据库配置监听

(1)查看监听文件

[oracle@ora ~]$ cd $ORACLE_HOME/network/admin
[oracle@ora admin]$ ll
总用量 16
-rw-r--r-- 1 oracle oinstall 368 1230 21:28 listener.ora
drwxr-xr-x 2 oracle oinstall  64 1230 21:15 samples
-rw-r--r-- 1 oracle oinstall 381 1217 2012 shrept.lst
-rw-r--r-- 1 oracle oinstall 223 1230 21:28 sqlnet.ora
-rw-r----- 1 oracle oinstall 322 1230 21:46 tnsnames.ora

(2)配置监听

[oracle@ora admin]$ vi listener.ora# listener.ora Network Configuration File: /usr/local/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = ora)(PORT = 1521))))SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = hisdb)(ORACLE_HOME = /usr/local/oracle/product/11.2.0/db_1)(SID_NAME = ora))(SID_DESC =(GLOBAL_DBNAME = hisdbdg)(ORACLE_HOME = /usr/local/oracle/product/11.2.0/db_1)(SID_NAME = oradg)))ADR_BASE_LISTENER = /usr/local/oracle[oracle@ora admin]$ vi tnsnames.ora
# tnsnames.ora Network Configuration File: /usr/local/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.HISDB =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = ora)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)))HISDBDG =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = oradg)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdbdg)))

(3)重启监听,查看监听状态

[oracle@ora admin]$ lsnrctl statusLSNRCTL for Linux: Version 11.2.0.4.0 - Production on 31-DEC-2024 18:52:02Copyright (c) 1991, 2013, Oracle.  All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                31-DEC-2024 18:51:55
Uptime                    0 days 0 hr. 0 min. 6 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /usr/local/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File         /usr/local/oracle/diag/tnslsnr/ora/listener/alert/log.xml
Listening Endpoints Summary...(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora)(PORT=1521)))
Services Summary...
Service "hisdb" has 1 instance(s).Instance "ora", status UNKNOWN, has 1 handler(s) for this service...
Service "hisdbdg" has 1 instance(s).Instance "oradg", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

(4)使用tnsping测试主备连通性

tnsping hisdbtnsping hisdbdg
6、修改主数据库的配置文件

(1)生成参数文件

SQL> create pfile from spfile;File created.

(2)查看数据库信息

-- 主数据库
SQL> show parameter db_unique_name;NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_unique_name			     string	 hisdb-- 备份数据库
SQL> show parameter db_unique_name;

(3)修改参数文件

# 在参数文件中添加以下内容:
*.db_unique_name='hisdb'                           # 主数据库的唯一名,默认和数据库名一致
*.log_archive_config='dg_config=(hisdb,hisdbdg)'   # 主库和备库在tnsname.ora中的连接名*.log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST valid_for=(all_logfiles,all_roles) db_unique_name=hisdb'                             # 主数据库的唯一名
*.log_archive_dest_2='service=hisdbdg lgwr async valid_for=(online_logfiles,primary_role) db_unique_name=hisdbdg'                           # 备用数据库的唯一名
*.db_file_name_convert='/usr/local/oradata/hisdb/','/usr/local/oradata/hisdb/'
# db_file_name_convert参数的设置说明:当主备库目录结构不一致的时候,主数据库和备用数据库的数据文件
# 转换目录映射
# 格式: 
# 主库配置格式: *.db_file_name_convert= 备用数据库数据文件目录,主数据库数据文件目录
# 备库配置格式: *.db_file_name_convert= 主数据库数据文件目录,备用数据库数据文件目录
*.log_file_name_convert='/usr/local/oradata/hisdb/','/usr/local/oradata/hisdb/'
# log_file_name_convert:指明主数据库和备用数据库的log文件转换目录映射。
# 主库配置格式: *. log_file_name_convert=备用数据库log目录,主数据库log目录
# 备库配置格式: *. log_file_name_convert=主数据库log目录,备用数据库log目录
# 如果主备库的数据文件路径以及联机日志路径不一致,则需要设置db_file_name_convert和
# log_file_name_convert的参数,当然如果多对一同样要设置。
# 但是如果主备库数据文件以及日志文件路径一直则不需要设置该参数
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.standby_file_management='auto'
# fal_client用于发送日志,fal_server用于接受日志。
# 也即无论是主库或备库,fal_server=对方,fal_client=自己
# 主库设置如下
*.fal_server='hisdbdg'
*.fal_client='hisdb'
# 备库设置如下
# *.fal_server='hisdb'
# *.fal_client='hisdbdg'

修改以后的参数文件内容如下:

[oracle@ora admin]$ cd $ORACLE_HOME/dbs
[oracle@ora dbs]$ ll
总用量 24
-rw-rw---- 1 oracle oinstall 1544 11 17:31 hc_ora.dat
-rw-r--r-- 1 oracle oinstall 2851 515 2009 init.ora
-rw-r--r-- 1 oracle oinstall 1384 11 17:41 initora.ora
-rw-r----- 1 oracle oinstall   24 1230 21:46 lkHISDB
-rw-r----- 1 oracle oinstall 1536 1230 21:46 orapwora
-rw-r----- 1 oracle oinstall 3584 11 17:32 spfileora.ora[oracle@ora admin]$ vi initora.oraora.__db_cache_size=792723456
ora.__java_pool_size=4194304
ora.__large_pool_size=8388608
ora.__oracle_base='/usr/local/oracle'#ORACLE_BASE set from environment
ora.__pga_aggregate_target=499122176
ora.__sga_target=1073741824
ora.__shared_io_pool_size=0
ora.__shared_pool_size=255852544
ora.__streams_pool_size=0
*.audit_file_dest='/usr/local/oracle/admin/hisdb/adump'
*.audit_trail='db'
*.compatible='11.2.0.4.0'
*.control_files='/usr/local/oradata/hisdb/control01.ctl','/usr/local/oracle/fast_recovery_area/hisdb/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='hisdb'
*.db_recovery_file_dest_size=4385144832
*.db_recovery_file_dest='/usr/local/oracle/fast_recovery_area'
*.diagnostic_dest='/usr/local/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=oraXDB)'
*.open_cursors=300
*.pga_aggregate_target=499122176
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=1073741824
*.undo_tablespace='UNDOTBS1'# 新增如下内容
*.db_unique_name='hisdb'
*.log_archive_config='dg_config=(hisdb,hisdbdg)'
*.log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST valid_for=(all_logfiles,all_roles) db_unique_name=hisdb'
*.log_archive_dest_2='service=hisdbdg lgwr async valid_for=(online_logfiles,primary_role) db_unique_name=hisdbdg'
*.db_file_name_convert='/usr/local/oradata/hisdbdg/','/usr/local/oradata/hisdb/'
*.log_file_name_convert='/usr/local/oradata/hisdbdg/','/usr/local/oradata/hisdb/'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=enable
*.standby_file_management='auto'
*.fal_server='hisdbdg'
*.fal_client='hisdb'

停库,然后使用修改后的参数文件启动数据库:

-- 停库
SQL> shutdow immediate
Database closed.
Database dismounted.
ORACLE instance shut down.-- 生成spfile参数文件
SQL> create spfile from pfile;File created.
-- 启动数据库
SQL> startup
ORACLE instance started.Total System Global Area 1068937216 bytes
Fixed Size		    2260088 bytes
Variable Size		  331350920 bytes
Database Buffers	  729808896 bytes
Redo Buffers		    5517312 bytes
Database mounted.
Database opened.
7、把主数据库的口令文件复制到备库
[oracle@ora admin]$ cd $ORACLE_HOME/dbs
[oracle@ora dbs]$ ls
hc_ora.dat  init.ora  lkHISDB  orapwora  spfileora.ora[oracle@ora dbs]$ scp orapwora oracle@oradg:$ORACLE_HOME/dbs
oracle@oradg's password: 
orapwora                                                                                                                                  100% 1536     1.5KB/s   00:00    
[oracle@ora dbs]$ 

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

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

相关文章

C 实现植物大战僵尸(二)

C 实现植物大战僵尸(二) 前文链接,C 实现植物大战僵尸(一) 五 制作启动菜单 启动菜单函数 void startUI() {IMAGE imageBg, imgMenu1, imgMenu2;loadimage(&imageBg, "res/menu.png");loadimage(&am…

SpiderFlow平台v0.5.0之数据库连接

一、寻找lib目录安装方式 在 SpiderFlow 平台中,连接数据库时需要指定数据库的 DriverClassName,并确保正确配置数据库驱动。通常,驱动文件(JAR 文件)需要放置在指定的文件夹中,以便 SpiderFlow 可以找到并…

【人工智能机器学习基础篇】——深入详解监督学习之模型评估:掌握评估指标(准确率、精确率、召回率、F1分数等)和交叉验证技术

深入详解监督学习之模型评估 在监督学习中,模型评估是衡量模型性能的关键步骤。有效的模型评估不仅能帮助我们理解模型在训练数据上的表现,更重要的是评估其在未见数据上的泛化能力。本文将深入探讨监督学习中的模型评估方法,重点介绍评估指…

单周期CPU电路设计

1.实验目的 本实验旨在让学生通过设计一个简单的单周期 CPU 电路,深入理解 RISC-V 指令集的子集功能实现,掌握数字电路设计与实现的基本流程,包括指令解析、部件组合、电路设计以及功能仿真等环节,同时培养verilog HDL编程能力和…

【AIGC】 ChatGPT实战教程:如何高效撰写学术论文引言

💥 欢迎来到我的博客!很高兴能在这里与您相遇! 首页:GPT-千鑫 – 热爱AI、热爱Python的天选打工人,活到老学到老!!!导航 - 人工智能系列:包含 OpenAI API Key教程, 50个…

C语言中的强弱符号

文章目录 一、基本定义二、链接过程中的行为三、应用场景四、强弱符号示例1五、稍有难度示例2 在C语言中,强弱符号是与链接过程相关的重要概念,C中不存在强弱符号,以下是对它们的详细讲解: 一、基本定义 强符号 强符号通常是指在…

Spring中的IOC是什么,优缺点有哪些?

目录 IOC的核心概念 IOC的优点 IOC的缺点 使用场景说明 总结 IOC(控制反转)是一种设计思想,用于实现低耦合、高内聚的软件架构。它通过将对象的创建和依赖管理交给外部容器来实现,从而减少对象之间的直接依赖关系。 IOC的核…

【网络协议】开放式最短路径优先协议OSPF详解(一)

OSPF 是为取代 RIP 而开发的一种无类别的链路状态路由协议,它通过使用区域划分以实现更好的可扩展性。 文章目录 链路状态路由协议OSPF 的工作原理OSPF 数据包类型Dijkstra算法、管理距离与度量值OSPF的管理距离OSPF的度量值 链路状态路由协议的优势拓扑结构路由器O…

鸿蒙HarmonyOS开发:拨打电话、短信服务、网络搜索、蜂窝数据、SIM卡管理、observer订阅管理

文章目录 一、call模块(拨打电话)1、使用makeCall拨打电话2、获取当前通话状态3、判断是否存在通话4、检查当前设备是否具备语音通话能力 二、sms模块(短信服务)1、创建短信2、发送短信 三、radio模块(网络搜索&#x…

Docker学习相关笔记,持续更新

如何推送到Docker Hub仓库 在Docker Hub新建一个仓库,我的用户名是 leilifengxingmw,我建的仓库名是 hello_world。 在本地的仓库构建镜像,注意要加上用户名 docker build -t leilifengxingmw/hello_world:v1 .构建好以后,本地会…

2024年12月 Scratch 图形化(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch图形化等级考试(1~4级)全部真题・点这里 一、单选题(共25题,共50分) 第 1 题 点击下列哪个按钮,可以将红框处的程序放大?( ) A. B. C.

向 SwiftUI 视图注入 managedObjectContext 环境变量导致 Xcode 预览(Preview)崩溃的解决

问题现象 从 SwiftUI 诞生到现在,我们这些秃头码农们早已都习惯了在 Xcode 预览中调试 App 界面了。不过,对于某些场景下向 SwiftUI 视图传递 managedObjectContext 环境变量(environment)总是会导致 Xcode 预览崩溃,这是怎么回事呢? 如上图所示,甚至我们将一个常驻内存…

VMware安装配置

1、官网下载VMware16 (1)进入VMware官网https://www.vmware.com/cn.html,之后点击下载里的Workstation Pro: (2)之后选择你要下载的VMware的版本,找到合适的下载,我这里以Windows系…

Python中的闭包和装饰器

一、闭包的定义与实例 1.1 闭包的定义与介绍 在Python实际开发过程中,调用函数过程中,函数内定义的变量都销毁了。此时由于业务需求可能需要保存函数内的这个变量,调用这个变量进行一系列操作。为了解决这个问题,引入闭包这个概念…

机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型

机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型 目录 机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型1 过拟合和欠拟合1.1 过拟合1.2 欠拟合 2 正则化惩罚2.1 概念2.2 函数2.3 正则化种类 3 K折交叉验证3.1 概念3.2 图片理解3.3 函数导入3.4 参数理解 4 训练模型K折交…

Qt 下位机串口模拟器

使用 vspd 创建虚拟配对串口,Qt 实现下位机串口模拟器,便于上位机开发及实时调试,适用字符串格式上下位机串口通信,数据包格式需增加自定义解析处理。 通过以下链接下载 vspd 安装包,进行 dll 破解。 链接: https://…

HarmonyNext 鸿蒙开发中,在H5 页面如何下载图片保存到媒体库。

作为一个资深的鸿蒙开发者,可以有偿解决你在开发过程中遇到的问题!!绿泡泡:781284440 1.首先安装 ohos-dsbridge 插件地址:OpenHarmony三方库中心仓 2. 在生命周期 aboutToApper 中注册全局方法 this.controller.addJavascriptObject(this, account); 3. 使用装饰器@Java…

Android 15 状态栏闹钟图标不显示问题修复

Android 15 状态栏闹钟图标不显示问题修复 问题描述 在 Android 15 系统中,发现即使设置了闹钟,状态栏也不会显示闹钟图标。这个问题影响了用户及时查看闹钟状态的体验。 问题分析 通过查看 SystemUI 的配置文件,发现在 frameworks/base/packages/SystemUI/res/values/conf…

vue 虚拟滚动 vue-virtual-scroller RecycleScroller

vue 3 https://github.com/Akryum/vue-virtual-scroller/blob/master/packages/vue-virtual-scroller/README.md vue 2 https://github.com/Akryum/vue-virtual-scroller/tree/v1/packages/vue-virtual-scroller npm install --save vue-virtual-scrollernextmain.js // 虚拟滚…

密钥登录服务器

1. 生成 SSH 密钥对 如果您还没有生成密钥对,可以使用以下命令生成: ssh-keygen 在 root 用户的家目录中生成了一个 .ssh 的隐藏目录,内含两个密钥文件:id_rsa 为私钥,id_rsa.pub 为公钥。 在提示时,您可…