Using RMAN duplicate Created Remote Auxiliary Database

2024-02-01 09:08

本文主要是介绍Using RMAN duplicate Created Remote Auxiliary Database,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目标数据库SID=backupdb
辅助数据库SID=backupdb
准备工作包括:目标数据库的全备;在辅助数据库端安装oracle10gR2软件,创建相应的目录、口令文件、pfile,拷贝备份集到辅助数据库

备份全库和当前的controlfile

RMAN> run {
2> allocate channel c1 device type disk;
3> backup as compressed backupset
4> incremental level=0
5> format='/orabackup/inc0_%d_%U' tag='inc0'
6> channel=c1
7> database plus archivelog delete input;
8> backup
9> format='/orabackup/bkctl.ctl' tag='bkctl'
10> channel=c1
11> current controlfile;
12> release channel c1;
13> }
released channel: ORA_DISK_1
allocated channel: c1
channel c1: sid=145 devtype=DISKStarting backup at 28-MAR-12
current log archived
channel c1: starting compressed archive log backupset
channel c1: specifying archive log(s) in backup set
input archive log thread=1 sequence=6 recid=4 stamp=779120629
channel c1: starting piece 1 at 28-MAR-12
channel c1: finished piece 1 at 28-MAR-12
piece handle=/orabackup/inc0_BACKUPDB_01n70rvl_1_1 tag=INC0 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
channel c1: deleting archive log(s)
archive log filename=/arch/1_6_778974218.dbf recid=4 stamp=779120629
Finished backup at 28-MAR-12Starting backup at 28-MAR-12
channel c1: starting compressed incremental level 0 datafile backupset
channel c1: specifying datafile(s) in backupset
input datafile fno=00006 name=/u01/app/oracle/oradata/backupdb/catalog01.dbf
input datafile fno=00001 name=/u01/app/oracle/oradata/backupdb/system01.dbf
input datafile fno=00003 name=/u01/app/oracle/oradata/backupdb/sysaux01.dbf
input datafile fno=00005 name=/u01/app/oracle/oradata/backupdb/example01.dbf
input datafile fno=00002 name=/u01/app/oracle/oradata/backupdb/undotbs01.dbf
input datafile fno=00004 name=/u01/app/oracle/oradata/backupdb/users01.dbf
channel c1: starting piece 1 at 28-MAR-12
channel c1: finished piece 1 at 28-MAR-12
piece handle=/orabackup/inc0_BACKUPDB_02n70rvn_1_1 tag=INC0 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:55
channel c1: starting compressed incremental level 0 datafile backupset
channel c1: specifying datafile(s) in backupset
including current control file in backupset
including current SPFILE in backupset
channel c1: starting piece 1 at 28-MAR-12
channel c1: finished piece 1 at 28-MAR-12
piece handle=/orabackup/inc0_BACKUPDB_03n70s1e_1_1 tag=INC0 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
Finished backup at 28-MAR-12Starting backup at 28-MAR-12
current log archived
channel c1: starting compressed archive log backupset
channel c1: specifying archive log(s) in backup set
input archive log thread=1 sequence=7 recid=5 stamp=779120688
channel c1: starting piece 1 at 28-MAR-12
channel c1: finished piece 1 at 28-MAR-12
piece handle=/orabackup/inc0_BACKUPDB_04n70s1g_1_1 tag=INC0 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
channel c1: deleting archive log(s)
archive log filename=/arch/1_7_778974218.dbf recid=5 stamp=779120688
Finished backup at 28-MAR-12Starting backup at 28-MAR-12
channel c1: starting full datafile backupset
channel c1: specifying datafile(s) in backupset
including current control file in backupset
channel c1: starting piece 1 at 28-MAR-12
channel c1: finished piece 1 at 28-MAR-12
piece handle=/orabackup/bkctl.ctl tag=BKCTL comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
Finished backup at 28-MAR-12released channel: c1RMAN>
RMAN> list backupset summary;
List of Backups
===============
Key TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
------- -- -- - ----------- --------------- ------- ------- ---------- ---
1 B A A DISK 28-MAR-12 1 1 YES INC0
2 B 0 A DISK 28-MAR-12 1 1 YES INC0
3 B 0 A DISK 28-MAR-12 1 1 YES INC0
4 B A A DISK 28-MAR-12 1 1 YES INC0
5 B F A DISK 28-MAR-12 1 1 NO BKCTLRMAN>

在远端服务器上创建相应的目录

[oracle@zhong ~]$ mkdir -p $ORACLE_BASE/admin/backupdb/adump
[oracle@zhong ~]$ mkdir -p $ORACLE_BASE/admin/backupdb/bdump
[oracle@zhong ~]$ mkdir -p $ORACLE_BASE/admin/backupdb/cdump
[oracle@zhong ~]$ mkdir -p $ORACLE_BASE/admin/backupdb/udump
[oracle@zhong ~]$ mkdir -p $ORACLE_BASE/oradata/backupdb
[oracle@zhong ~]$ mkdir -p /u01/app/oracle/flash_recovery_area
[oracle@zhong ~]$ su - root
Password:
[root@zhong ~]# mkdir -p /arch/
[root@zhong ~]# chown oracle.oinstall /arch/
[root@zhong ~]# su - oracle
[oracle@zhong ~]$

在远端服务器上创建口令文件,pfile

[oracle@zhong ~]$ orapwd file=$ORACLE_HOME/dbs/orapwbackupdb password=oracle entries=5
[oracle@zhong ~]$ cat $ORACLE_HOME/dbs/initbackupdb.ora
backupdb.__db_cache_size=184549376
backupdb.__java_pool_size=4194304
backupdb.__large_pool_size=4194304
backupdb.__shared_pool_size=88080384
backupdb.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/backupdb/adump'
*.background_dump_dest='/u01/app/oracle/admin/backupdb/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u01/app/oracle/oradata/backupdb/control01.ctl','/u01/app/oracle/oradata/backupdb/control02.ctl','/u01/app/oracle/oradata/backupdb/control03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/backupdb/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='backupdb'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=21474836480
*.dispatchers='(PROTOCOL=TCP) (SERVICE=backupdbXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=/arch'
*.log_archive_format='%t_%s_%r.dbf'
*.nls_language='SIMPLIFIED CHINESE'
*.open_cursors=300
*.pga_aggregate_target=94371840
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=285212672
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/backupdb/udump'

将目标数据库的备份集传输到远端,这里我的目录结构是一致的

[oracle@catalog orabackup]$ scp -r * oracle@192.168.106.162:/orabackup
The authenticity of host '192.168.106.162 (192.168.106.162)' can't be established.
RSA key fingerprint is a0:e4:b0:94:30:e4:20:56:00:12:c7:fa:48:9e:c8:d0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.106.162' (RSA) to the list of known hosts.
oracle@192.168.106.162's password:
bkctl.ctl 100% 6944KB 6.8MB/s 00:00
inc0_BACKUPDB_01n70rvl_1_1 100% 5635KB 5.5MB/s 00:00
inc0_BACKUPDB_02n70rvn_1_1 100% 116MB 29.0MB/s 00:04
inc0_BACKUPDB_03n70s1e_1_1 100% 1072KB 1.1MB/s 00:00
inc0_BACKUPDB_04n70s1g_1_1 100% 3072 3.0KB/s 00:00

启动远端数据库到nomount状态

[oracle@zhong ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 28 15:16:56 2012Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to an idle instance.SYS@backupdb:~>startup nomount
ORACLE instance started.Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 96470608 bytes
Database Buffers 184549376 bytes
Redo Buffers 2973696 bytes
SYS@backupdb:~>


tnsnames.ora里配置好了网络服务名,在远端使用RMAN连接目标数据库,查看备份集,检查备份集状态

[oracle@zhong ~]$ rman target sys/oracle@target
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Mar 28 15:48:21 2012Copyright (c) 1982, 2005, Oracle. All rights reserved.connected to target database: BACKUPDB (DBID=4125018504)RMAN> list backupset summary;using target database control file instead of recovery catalogList of Backups
===============
Key TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
------- -- -- - ----------- --------------- ------- ------- ---------- ---
1 B A A DISK 28-MAR-12 1 1 YES INC0
2 B 0 A DISK 28-MAR-12 1 1 YES INC0
3 B 0 A DISK 28-MAR-12 1 1 YES INC0
4 B A A DISK 28-MAR-12 1 1 YES INC0
5 B F A DISK 28-MAR-12 1 1 NO BKCTLRMAN> crosscheck backupset;allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=143 devtype=DISK
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/orabackup/inc0_BACKUPDB_01n70rvl_1_1 recid=1 stamp=779120630
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/orabackup/inc0_BACKUPDB_02n70rvn_1_1 recid=2 stamp=779120631
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/orabackup/inc0_BACKUPDB_03n70s1e_1_1 recid=3 stamp=779120687
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/orabackup/inc0_BACKUPDB_04n70s1g_1_1 recid=4 stamp=779120689
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/orabackup/bkctl.ctl recid=5 stamp=779120691
Crosschecked 5 objects

然后连接到本机nomount状态的辅助数据库

RMAN> connect auxiliary sys/oracle@backupdb;
connected to auxiliary database: BACKUPDB (not mounted)RMAN> list backupset by file;using target database control file instead of recovery catalogList of Datafile Backups
========================File Key TY LV S Ckp SCN Ckp Time #Pieces #Copies Compressed Tag
---- ------- - -- - ---------- --------- ------- ------- ---------- ---
1 2 B 0 A 555821 28-MAR-12 1 1 YES INC0
2 2 B 0 A 555821 28-MAR-12 1 1 YES INC0
3 2 B 0 A 555821 28-MAR-12 1 1 YES INC0
4 2 B 0 A 555821 28-MAR-12 1 1 YES INC0
5 2 B 0 A 555821 28-MAR-12 1 1 YES INC0
6 2 B 0 A 555821 28-MAR-12 1 1 YES INC0List of Archived Log Backups
============================Thrd Seq Low SCN Low Time BS Key S #Pieces #Copies Compressed Tag
---- ------- ---------- --------- ------- - ------- ------- ---------- ---
1 6 548132 28-MAR-12 1 A 1 1 YES INC0
1 7 555817 28-MAR-12 4 A 1 1 YES INC0List of Control File Backups
============================CF Ckp SCN Ckp Time BS Key S #Pieces #Copies Compressed Tag
---------- --------- ------- - ------- ------- ---------- ---
555849 28-MAR-12 5 A 1 1 NO BKCTL
555839 28-MAR-12 3 A 1 1 YES INC0
List of SPFILE Backups
======================Modification Time BS Key S #Pieces #Copies Compressed Tag
----------------- ------- - ------- ------- ---------- ---
26-MAR-12 3 A 1 1 YES INC0RMAN>

使用RMAN创建辅助数据库

RMAN> connect auxiliary sys/oracle@backupdb;
connected to auxiliary database: BACKUPDB (not mounted)RMAN> run {
2> allocate auxiliary channel c1 device type disk;
3> duplicate target database to backupdb nofilenamecheck until logseq 8;
4> }using target database control file instead of recovery catalog
allocated channel: c1
channel c1: sid=155 devtype=DISKStarting Duplicate Db at 28-MAR-12contents of Memory Script:
{
set until scn 555843;
set newname for datafile 1 to
"/u01/app/oracle/oradata/backupdb/system01.dbf";
set newname for datafile 2 to
"/u01/app/oracle/oradata/backupdb/undotbs01.dbf";
set newname for datafile 3 to
"/u01/app/oracle/oradata/backupdb/sysaux01.dbf";
set newname for datafile 4 to
"/u01/app/oracle/oradata/backupdb/users01.dbf";
set newname for datafile 5 to
"/u01/app/oracle/oradata/backupdb/example01.dbf";
set newname for datafile 6 to
"/u01/app/oracle/oradata/backupdb/catalog01.dbf";
restore
check readonly
clone database
;
}
executing Memory Scriptexecuting command: SET until clauseexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEStarting restore at 28-MAR-12channel c1: starting datafile backupset restore
channel c1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/app/oracle/oradata/backupdb/system01.dbf
restoring datafile 00002 to /u01/app/oracle/oradata/backupdb/undotbs01.dbf
restoring datafile 00003 to /u01/app/oracle/oradata/backupdb/sysaux01.dbf
restoring datafile 00004 to /u01/app/oracle/oradata/backupdb/users01.dbf
restoring datafile 00005 to /u01/app/oracle/oradata/backupdb/example01.dbf
restoring datafile 00006 to /u01/app/oracle/oradata/backupdb/catalog01.dbf
channel c1: reading from backup piece /orabackup/inc0_BACKUPDB_02n70rvn_1_1
channel c1: restored backup piece 1
piece handle=/orabackup/inc0_BACKUPDB_02n70rvn_1_1 tag=INC0
channel c1: restore complete, elapsed time: 00:00:39
Finished restore at 28-MAR-12
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "BACKUPDB" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 SIZE 50 M ,
GROUP 2 SIZE 50 M ,
GROUP 3 SIZE 50 M
DATAFILE
'/u01/app/oracle/oradata/backupdb/system01.dbf'
CHARACTER SET ZHS16GBKcontents of Memory Script:
{
switch clone datafile all;
}
executing Memory Scriptdatafile 2 switched to datafile copy
input datafile copy recid=1 stamp=779126597 filename=/u01/app/oracle/oradata/backupdb/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=779126597 filename=/u01/app/oracle/oradata/backupdb/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=779126597 filename=/u01/app/oracle/oradata/backupdb/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=779126597 filename=/u01/app/oracle/oradata/backupdb/example01.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=779126597 filename=/u01/app/oracle/oradata/backupdb/catalog01.dbfcontents of Memory Script:
{
set until scn 555843;
recover
clone database
delete archivelog
;
}
executing Memory Scriptexecuting command: SET until clauseStarting recover at 28-MAR-12starting media recoverychannel c1: starting archive log restore to default destination
channel c1: restoring archive log
archive log thread=1 sequence=7
channel c1: reading from backup piece /orabackup/inc0_BACKUPDB_04n70s1g_1_1
channel c1: restored backup piece 1
piece handle=/orabackup/inc0_BACKUPDB_04n70s1g_1_1 tag=INC0
channel c1: restore complete, elapsed time: 00:00:02
archive log filename=/arch/1_7_778974218.dbf thread=1 sequence=7
channel clone_default: deleting archive log(s)
archive log filename=/arch/1_7_778974218.dbf recid=1 stamp=779126599
media recovery complete, elapsed time: 00:00:01
Finished recover at 28-MAR-12contents of Memory Script:
{
shutdown clone;
startup clone nomount ;
}
executing Memory Scriptdatabase dismounted
Oracle instance shut downconnected to auxiliary database (not started)
Oracle instance startedTotal System Global Area 285212672 bytesFixed Size 1218992 bytes
Variable Size 96470608 bytes
Database Buffers 184549376 bytes
Redo Buffers 2973696 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "BACKUPDB" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 SIZE 50 M ,
GROUP 2 SIZE 50 M ,
GROUP 3 SIZE 50 M
DATAFILE
'/u01/app/oracle/oradata/backupdb/system01.dbf'
CHARACTER SET ZHS16GBKcontents of Memory Script:
{
set newname for tempfile 1 to
"/u01/app/oracle/oradata/backupdb/temp01.dbf";
switch clone tempfile all;
catalog clone datafilecopy "/u01/app/oracle/oradata/backupdb/undotbs01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/backupdb/sysaux01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/backupdb/users01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/backupdb/example01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/backupdb/catalog01.dbf";
switch clone datafile all;
}
executing Memory Scriptexecuting command: SET NEWNAMErenamed temporary file 1 to /u01/app/oracle/oradata/backupdb/temp01.dbf in control filecataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/backupdb/undotbs01.dbf recid=1 stamp=779126606cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/backupdb/sysaux01.dbf recid=2 stamp=779126607cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/backupdb/users01.dbf recid=3 stamp=779126607cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/backupdb/example01.dbf recid=4 stamp=779126607cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/backupdb/catalog01.dbf recid=5 stamp=779126607datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=779126606 filename=/u01/app/oracle/oradata/backupdb/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=779126607 filename=/u01/app/oracle/oradata/backupdb/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=779126607 filename=/u01/app/oracle/oradata/backupdb/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=779126607 filename=/u01/app/oracle/oradata/backupdb/example01.dbf
datafile 6 switched to datafile copy
input datafile copy recid=5 stamp=779126607 filename=/u01/app/oracle/oradata/backupdb/catalog01.dbfcontents of Memory Script:
{
Alter clone database open resetlogs;
}
executing Memory Scriptdatabase opened
Finished Duplicate Db at 28-MAR-12RMAN>

验证

[oracle@zhong ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 28 16:06:33 2012Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining optionsSYS@backupdb:~>select open_mode from v$database;OPEN_MODE
----------
READ WRITESYS@backupdb:~>select member from v$logfile;MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/flash_recovery_area/BACKUPDB/onlinelog/o1_mf_3_7q5kgjwh_.log
/u01/app/oracle/flash_recovery_area/BACKUPDB/onlinelog/o1_mf_2_7q5kghoy_.log
/u01/app/oracle/flash_recovery_area/BACKUPDB/onlinelog/o1_mf_1_7q5kghf5_.logSYS@backupdb:~>select count(*) from hr.employees;COUNT(*)
----------
107SYS@backupdb:~>


这篇关于Using RMAN duplicate Created Remote Auxiliary Database的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/666779

相关文章

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

解密SQL查询语句执行的过程

《解密SQL查询语句执行的过程》文章讲解了SQL语句的执行流程,涵盖解析、优化、执行三个核心阶段,并介绍执行计划查看方法EXPLAIN,同时提出性能优化技巧如合理使用索引、避免SELECT*、JOIN... 目录1. SQL语句的基本结构2. SQL语句的执行过程3. SQL语句的执行计划4. 常见的性能优

SQL Server 中的 WITH (NOLOCK) 示例详解

《SQLServer中的WITH(NOLOCK)示例详解》SQLServer中的WITH(NOLOCK)是一种表提示,等同于READUNCOMMITTED隔离级别,允许查询在不获取共享锁的情... 目录SQL Server 中的 WITH (NOLOCK) 详解一、WITH (NOLOCK) 的本质二、工作

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

2025版mysql8.0.41 winx64 手动安装详细教程

《2025版mysql8.0.41winx64手动安装详细教程》本文指导Windows系统下MySQL安装配置,包含解压、设置环境变量、my.ini配置、初始化密码获取、服务安装与手动启动等步骤,... 目录一、下载安装包二、配置环境变量三、安装配置四、启动 mysql 服务,修改密码一、下载安装包安装地

MySQL CTE (Common Table Expressions)示例全解析

《MySQLCTE(CommonTableExpressions)示例全解析》MySQL8.0引入CTE,支持递归查询,可创建临时命名结果集,提升复杂查询的可读性与维护性,适用于层次结构数据处... 目录基本语法CTE 主要特点非递归 CTE简单 CTE 示例多 CTE 示例递归 CTE基本递归 CTE 结