热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle使用RMAN复制数据库

1.使用RMAN创建数据库副本使用RMAN的DUPLICATE命令可根据目标数据库备份创建数据库副本。创建数据库副本:1.创建辅助实例的Oracle口令文件。2.建立到辅助实例的OracleNet连接。3.创建辅助实例的初始化参数文件。4.在NOMOUNT模式下启动

1.使用 RMAN 创建数据库副本 使用 RMAN 的 DUPLICATE 命令可根据目标数据库备份创建数据库副本。 创建数据库副本: 1.创建辅助实例的 Oracle 口令文件。 2. 建立到辅助实例的 Oracle Net 连接。 3. 创建辅助实例的初始化参数文件。 4.在 NOMOUNT 模式下启动

1.使用 RMAN 创建数据库副本

使用 RMAN 的 DUPLICATE 命令可根据目标数据库备份创建数据库副本。

创建数据库副本:

1.创建辅助实例的 Oracle 口令文件。
2.
建立到辅助实例的 Oracle Net 连接。
3.
创建辅助实例的初始化参数文件。

4.在 NOMOUNT 模式下启动辅助实例。
5.
装载或打开目标数据库。

6.确保备份和归档重做日志文件可用。

7.根据需要分配辅助通道。

8.执行 DUPLICATE 命令。

创建辅助实例的初始化参数文件 :

请按如下方式指定参数:

DB_NAME
如果数据库副本与目标数据库在同一 Oracle 主目录中,则它们的名称必须不同。
在 DUPLICATE 命令中使用相同值。


DB_BLOCK_SIZE
指定的值应与为目标数据库设置的值相同。

指定用于控制文件命名的参数:
指定下列参数可控制辅助数据库的文件命名:

CONTROL_FILES

DB_FILE_NAME_CONVERT

LOG_FILE_NAME_CONVERT

在 NOMOUNT 模式下启动实例 :
在 NOMOUNT 模式下启动辅助实例。
根据用来启动实例的文本初始化参数文件创建服务器参数文件 (SPFILE)。

确保备份和归档重做日志文件可用 :

在副本主机上必须能访问所有目标数据库数据文件的备份。

备份可以是完全备份和增量备份的组合。

在副本主机上必须能访问恢复数据库副本所需的归档重做日志文件。

归档重做日志文件可以是:

--介质管理器上的备份

--映像副本

--实际的归档重做日志文件

分配辅助通道 :

使用 RMAN 的 DUPLICATE 命令:
RMAN> RUN

{ALLOCATE AUXILIARY CHANNEL aux1 DEVICE TYPE DISK;

ALLOCATE AUXILIARY CHANNEL aux2 DEVICE TYPE DISK;



DUPLICATE TARGET DATABASE to auxdb;

}

当您执行 DUPLICATE 命令时,RMAN 会执行下列操作:

1.创建数据库副本的控制文件
2.
将目标数据文件还原到数据库副本

3.使用所有可用的增量备份和归档重做日志文件执行不完全恢复

4.关闭辅助实例后又重新启动它

5.通过 RESETLOGS 选项打开数据库副本

6.创建联机重做日志文件

7.为数据库副本生成新的唯一 DBID

指定 DUPLICATE 命令的选项
请在执行 DUPLICATE 命令时根据需要指定其它选项。


SKIP READONLY:用于排除只读表空间数据文件。


SKIP TABLESPACE:用于从目标数据库中排除表空间。不能排除 SYSTEM 表空间或包含还原段或回退段的表空间。

NOFILENAMECHECK:用于防止 RMAN 检查目标数据库数据文件是否与正在使用的数据库副本数据文件同名。当目标数据库和数据库副本的数据文件和重做日志文件使用相同的名称时,必须指定此选项。当创建数据库副本的主机具有与目标数据库主机一样的磁盘配置、目录结构和文件名时,通常使用此选项。如果这种情况下未指定 NOFILENAMECHECK,RMAN 会返回错误。

OPEN RESTRICTED:用于在数据库打开之后自动启用 RESTRICTED SESSION。

具体实验:

1.1. 复制数据库

1.1.1. 创建源库备份

[oracle@ocmu ~]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Sun Mar 31 15:39:16 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

connected to target database: ORA11GR2 (DBID=116453860)

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

using target database control file instead of recovery catalog

new RMAN configuration parameters:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

new RMAN configuration parameters are successfully stored

RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

Starting backup at 31-MAR-13

current log archived

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=20 device type=DISK

channel ORA_DISK_1: starting archived log backup set

channel ORA_DISK_1: specifying archived log(s) in backup set

input archived log thread=1 sequence=8 RECID=1 STAMP=811520735

input archived log thread=1 sequence=9 RECID=2 STAMP=811520750

input archived log thread=1 sequence=10 RECID=3 STAMP=811520772

input archived log thread=1 sequence=11 RECID=4 STAMP=811520783

input archived log thread=1 sequence=12 RECID=5 STAMP=811520796

input archived log thread=1 sequence=13 RECID=6 STAMP=811525192

channel ORA_DISK_1: starting piece 1 at 31-MAR-13

channel ORA_DISK_1: finished piece 1 at 31-MAR-13

piece handle=/u01/app/FRA/ORA11GR2/backupset/2013_03_31/o1_mf_annnn_TAG20130331T153953_8oht29yn_.bkp tag=TAG20130331T153953 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:01:04

Finished backup at 31-MAR-13

Starting backup at 31-MAR-13

using channel ORA_DISK_1

channel ORA_DISK_1: starting full datafile backup set

channel ORA_DISK_1: specifying datafile(s) in backup set

input datafile file number=00001 name=/u01/app/oracle/oradata/ORA11GR2/system01.dbf

input datafile file number=00002 name=/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf

input datafile file number=00003 name=/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf

input datafile file number=00005 name=/u01/app/oracle/oradata/ORA11GR2/example01.dbf

input datafile file number=00004 name=/u01/app/oracle/oradata/ORA11GR2/users01.dbf

channel ORA_DISK_1: starting piece 1 at 31-MAR-13

channel ORA_DISK_1: finished piece 1 at 31-MAR-13

piece handle=/u01/app/FRA/ORA11GR2/backupset/2013_03_31/o1_mf_nnndf_TAG20130331T154059_8oht4jr1_.bkp tag=TAG20130331T154059 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:04:33

Finished backup at 31-MAR-13

Starting backup at 31-MAR-13

current log archived

using channel ORA_DISK_1

channel ORA_DISK_1: starting archived log backup set

channel ORA_DISK_1: specifying archived log(s) in backup set

input archived log thread=1 sequence=14 RECID=7 STAMP=811525533

channel ORA_DISK_1: starting piece 1 at 31-MAR-13

channel ORA_DISK_1: finished piece 1 at 31-MAR-13

piece handle=/u01/app/FRA/ORA11GR2/backupset/2013_03_31/o1_mf_annnn_TAG20130331T154533_8ohtdxrl_.bkp tag=TAG20130331T154533 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01

Finished backup at 31-MAR-13

Starting Control File and SPFILE Autobackup at 31-MAR-13

piece handle=/u01/app/FRA/ORA11GR2/autobackup/2013_03_31/o1_mf_s_811525535_8ohtf2n9_.bkp comment=NONE

Finished Control File and SPFILE Autobackup at 31-MAR-13

RMAN>

1.1.2. 目标服务器上复制数据库

1) 创建密码文件

[oracle@ocmu ~]$ cd $ORACLE_HOME/dbs

[oracle@ocmu dbs]$ orapwd file= orapwORA11GR2 password=oracle entries=10

[oracle@ocmu dbs]$ ls orapw*

orapwORA11GR2

[oracle@ocmu dbs]$

2) 编辑tnsnames

[oracle@ocmu ~]$ cd $ORACLE_HOME/network/admin

[oracle@ocmu admin]$ vi tnsnames.ora

ORA11GR2 =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = ocmu)(PORT = 1521))

)

(CONNECT_DATA =

(ORACLE_SID = ORA11GR2)

)

)

3) 将源库的pfile文件拷贝到目标数据库

[oracle@ocmu ~]$ cd $ORACLE_HOME/dbs

[oracle@ocmu dbs]$

scp 192.168.1.200:/u01/app/oracle/product/11.2.0/db_1/dbs/initORA11GR2.ora .

The authenticity of host '192.168.1.200 (192.168.1.200)' can't be established.

RSA key fingerprint is 35:b3:59:37:e6:a1:3b:34:7d:01:84:ee:5d:9b:48:24.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added '192.168.1.200' (RSA) to the list of known hosts.

oracle@192.168.1.200's password:

initORA11GR2.ora 100% 948 0.9KB/s 00:00

[oracle@ocmu dbs]$

4) 创建相关目录

--创建数据文件存放目录

[oracle@ocmu ~]$ mkdir -p /u01/app/oracle/oradata/ORA11GR2

--创建快速恢复区目录

[oracle@ocmu ~]$ mkdir -p /u01/app/FRA/ORA11GR2

--创建admup转储目录

[oracle@ocmu ~]$ mkdir -p /u01/app/oracle/admin/ORA11GR2/adump

5) 将源库快速恢复区内容拷贝到目标库

[oracle@ocmu ~]$ cd /u01/app/FRA/ORA11GR2

[oracle@ocmu ORA11GR2]$ ls

[oracle@ocmu ORA11GR2]$

scp -r 192.168.1.200:/u01/app/FRA/ORA11GR2/archivelog .

oracle@192.168.1.200's password:

o1_mf_1_12_8ohorqkc_.arc 100% 48MB 24.1MB/s 00:02

o1_mf_1_11_8ohorc4n_.arc 100% 48MB 24.1MB/s 00:02

o1_mf_1_9_8ohoq8dx_.arc 100% 46MB 3.8MB/s 00:12

o1_mf_1_14_8ohtdx3d_.arc 100% 357KB 357.0KB/s 00:00

o1_mf_1_13_8oht26d8_.arc 100% 21MB 21.1MB/s 00:01

o1_mf_1_10_8ohoqxot_.arc 100% 48MB 24.1MB/s 00:02

o1_mf_1_8_8ohops0g_.arc 100% 44MB 3.1MB/s 00:14

[oracle@ocmu ORA11GR2]$

scp -r 192.168.1.200:/u01/app/FRA/ORA11GR2/autobackup .

oracle@192.168.1.200's password:

o1_mf_s_811525535_8ohtf2n9_.bkp 100% 9600KB 9.4MB/s 00:01

[oracle@ocmu ORA11GR2]$

scp -r 192.168.1.200:/u01/app/FRA/ORA11GR2/backupset .

oracle@192.168.1.200's password:

o1_mf_annnn_TAG20130331T153953_8oht29yn_.bkp 100% 256MB 9.8MB/s 00:26

o1_mf_nnndf_TAG20130331T154059_8oht4jr1_.bkp 100% 1142MB 7.7MB/s 02:29

o1_mf_annnn_TAG20130331T154533_8ohtdxrl_.bkp 100% 359KB 358.5KB/s 00:00

[oracle@ocmu ORA11GR2]$

6) 目标库启动到nomount模式

[oracle@ocmu ~]$ export ORACLE_SID=ORA11GR2

[oracle@ocmu ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sun Mar 31 16:29:42 2013

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

Connected to an idle instance.

SQL> startup nomount;

ORACLE instance started.

Total System Global Area 841162752 bytes

Fixed Size 1339768 bytes

Variable Size 532680328 bytes

Database Buffers 301989888 bytes

Redo Buffers 5152768 bytes

SQL>

7) 目标库运行duplicate命令

[oracle@ocmu ~]$ export ORACLE_SID=ORA11GR2

[oracle@ocmu ~]$ rman target sys/oracle@ora11gr2 auxiliary /

Recovery Manager: Release 11.2.0.1.0 - Production on Sun Mar 31 16:48:18 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

connected to target database: ORA11GR2 (DBID=116453860)

connected to auxiliary database: ORA11GR2 (not mounted)

RMAN> duplicate target database to ORA11GR2 pfile =/u01/app/oracle/product/11.2.0/db_1/dbs/initORA11GR2.ora

logfile

'/u01/app/oracle/oradata/ORA11GR2/redo01.log' size 50m,

'/u01/app/oracle/oradata/ORA11GR2/redo02.log' size 50m,

'/u01/app/oracle/oradata/ORA11GR2/redo03.log' size 50m

NOFILENAMECHECK;

Starting Duplicate Db at 31-MAR-13

using target database control file instead of recovery catalog

allocated channel: ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: SID=20 device type=DISK

contents of Memory Script:

{

sql clone "alter system set db_name =

''ORA11GR2'' comment=

''Modified by RMAN duplicate'' scope=spfile";

sql clone "alter system set db_unique_name =

''ORA11GR2'' comment=

''Modified by RMAN duplicate'' scope=spfile";

shutdown clone immediate;

startup clone force nomount

restore clone primary controlfile;

alter clone database mount;

}

executing Memory Script

sql statement: alter system set db_name = ''ORA11GR2'' comment= ''Modified by RMAN duplicate'' scope=spfile

sql statement: alter system set db_unique_name = ''ORA11GR2'' comment= ''Modified by RMAN duplicate'' scope=spfile

Oracle instance shut down

Oracle instance started

Total System Global Area 841162752 bytes

Fixed Size 1339768 bytes

Variable Size 536874632 bytes

Database Buffers 297795584 bytes

Redo Buffers 5152768 bytes

Starting restore at 31-MAR-13

allocated channel: ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: SID=18 device type=DISK

channel ORA_AUX_DISK_1: starting datafile backup set restore

channel ORA_AUX_DISK_1: restoring control file

channel ORA_AUX_DISK_1: reading from backup piece /u01/app/FRA/ORA11GR2/autobackup/2013_03_31/o1_mf_s_811525535_8ohtf2n9_.bkp

channel ORA_AUX_DISK_1: piece handle=/u01/app/FRA/ORA11GR2/autobackup/2013_03_31/o1_mf_s_811525535_8ohtf2n9_.bkp tag=TAG20130331T154535

channel ORA_AUX_DISK_1: restored backup piece 1

channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:03

output file name=/u01/app/oracle/oradata/ORA11GR2/control01.ctl

output file name=/u01/app/oracle/oradata/ORA11GR2/control02.ctl

Finished restore at 31-MAR-13

database mounted

contents of Memory Script:

{

set until scn 893076;

set newname for datafile 1 to

"/u01/app/oracle/oradata/ORA11GR2/system01.dbf";

set newname for datafile 2 to

"/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf";

set newname for datafile 3 to

"/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf";

set newname for datafile 4 to

"/u01/app/oracle/oradata/ORA11GR2/users01.dbf";

set newname for datafile 5 to

"/u01/app/oracle/oradata/ORA11GR2/example01.dbf";

restore

clone database

;

}

executing Memory Script

executing command: SET until clause

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 31-MAR-13

using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore

channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set

channel ORA_AUX_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/ORA11GR2/system01.dbf

channel ORA_AUX_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf

channel ORA_AUX_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf

channel ORA_AUX_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/ORA11GR2/users01.dbf

channel ORA_AUX_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/ORA11GR2/example01.dbf

channel ORA_AUX_DISK_1: reading from backup piece /u01/app/FRA/ORA11GR2/backupset/2013_03_31/o1_mf_nnndf_TAG20130331T154059_8oht4jr1_.bkp

channel ORA_AUX_DISK_1: piece handle=/u01/app/FRA/ORA11GR2/backupset/2013_03_31/o1_mf_nnndf_TAG20130331T154059_8oht4jr1_.bkp tag=TAG20130331T154059

channel ORA_AUX_DISK_1: restored backup piece 1

channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:02:36

Finished restore at 31-MAR-13

contents of Memory Script:

{

switch clone datafile all;

}

executing Memory Script

datafile 1 switched to datafile copy

input datafile copy RECID=2 STAMP=811529474 file name=/u01/app/oracle/oradata/ORA11GR2/system01.dbf

datafile 2 switched to datafile copy

input datafile copy RECID=3 STAMP=811529474 file name=/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf

datafile 3 switched to datafile copy

input datafile copy RECID=4 STAMP=811529474 file name=/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf

datafile 4 switched to datafile copy

input datafile copy RECID=5 STAMP=811529474 file name=/u01/app/oracle/oradata/ORA11GR2/users01.dbf

datafile 5 switched to datafile copy

input datafile copy RECID=6 STAMP=811529474 file name=/u01/app/oracle/oradata/ORA11GR2/example01.dbf

contents of Memory Script:

{

set until scn 893076;

recover

clone database

delete archivelog

;

}

executing Memory Script

executing command: SET until clause

Starting recover at 31-MAR-13

using channel ORA_AUX_DISK_1

starting media recovery

archived log for thread 1 with sequence 14 is already on disk as file /u01/app/FRA/ORA11GR2/archivelog/2013_03_31/o1_mf_1_14_8ohtdx3d_.arc

archived log file name=/u01/app/FRA/ORA11GR2/archivelog/2013_03_31/o1_mf_1_14_8ohtdx3d_.arc thread=1 sequence=14

media recovery complete, elapsed time: 00:00:04

Finished recover at 31-MAR-13

contents of Memory Script:

{

shutdown clone immediate;

startup clone nomount pfile= '/u01/app/oracle/product/11.2.0/db_1/dbs/initORA11GR2.ora';

}

executing Memory Script

database dismounted

Oracle instance shut down

connected to auxiliary database (not started)

Oracle instance started

Total System Global Area 841162752 bytes

Fixed Size 1339768 bytes

Variable Size 532680328 bytes

Database Buffers 301989888 bytes

Redo Buffers 5152768 bytes

sql statement: CREATE CONTROLFILE REUSE SET DATABASE "ORA11GR2" RESETLOGS ARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

LOGFILE

GROUP 1 '/u01/app/oracle/oradata/ORA11GR2/redo01.log' SIZE 50 M ,

GROUP 2 '/u01/app/oracle/oradata/ORA11GR2/redo02.log' SIZE 50 M ,

GROUP 3 '/u01/app/oracle/oradata/ORA11GR2/redo03.log' SIZE 50 M

DATAFILE

'/u01/app/oracle/oradata/ORA11GR2/system01.dbf'

CHARACTER SET AL32UTF8

contents of Memory Script:

{

set newname for tempfile 1 to

"/u01/app/oracle/oradata/ORA11GR2/temp01.dbf";

switch clone tempfile all;

catalog clone datafilecopy "/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf",

"/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf",

"/u01/app/oracle/oradata/ORA11GR2/users01.dbf",

"/u01/app/oracle/oradata/ORA11GR2/example01.dbf";

switch clone datafile all;

}

executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to /u01/app/oracle/oradata/ORA11GR2/temp01.dbf in control file

cataloged datafile copy

datafile copy file name=/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf RECID=1 STAMP=811529493

cataloged datafile copy

datafile copy file name=/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf RECID=2 STAMP=811529493

cataloged datafile copy

datafile copy file name=/u01/app/oracle/oradata/ORA11GR2/users01.dbf RECID=3 STAMP=811529493

cataloged datafile copy

datafile copy file name=/u01/app/oracle/oradata/ORA11GR2/example01.dbf RECID=4 STAMP=811529493

datafile 2 switched to datafile copy

input datafile copy RECID=1 STAMP=811529493 file name=/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf

datafile 3 switched to datafile copy

input datafile copy RECID=2 STAMP=811529493 file name=/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf

datafile 4 switched to datafile copy

input datafile copy RECID=3 STAMP=811529493 file name=/u01/app/oracle/oradata/ORA11GR2/users01.dbf

datafile 5 switched to datafile copy

input datafile copy RECID=4 STAMP=811529493 file name=/u01/app/oracle/oradata/ORA11GR2/example01.dbf

contents of Memory Script:

{

Alter clone database open resetlogs;

}

executing Memory Script

database opened

Finished Duplicate Db at 31-MAR-13

RMAN>

2.使用EM复制数据库

推荐阅读
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • Postgresql备份和恢复的方法及命令行操作步骤
    本文介绍了使用Postgresql进行备份和恢复的方法及命令行操作步骤。通过使用pg_dump命令进行备份,pg_restore命令进行恢复,并设置-h localhost选项,可以完成数据的备份和恢复操作。此外,本文还提供了参考链接以获取更多详细信息。 ... [详细]
  • 推荐一个ASP的内容管理框架(ASP Nuke)的优势和适用场景
    本文推荐了一个ASP的内容管理框架ASP Nuke,并介绍了其主要功能和特点。ASP Nuke支持文章新闻管理、投票、论坛等主要内容,并可以自定义模块。最新版本为0.8,虽然目前仍处于Alpha状态,但作者表示会继续更新完善。文章还分析了使用ASP的原因,包括ASP相对较小、易于部署和较简单等优势,适用于建立门户、网站的组织和小公司等场景。 ... [详细]
  • 本文介绍了如何在MySQL中将零值替换为先前的非零值的方法,包括使用内联查询和更新查询。同时还提供了选择正确值的方法。 ... [详细]
  • 在数据分析工作中,我们通常会遇到这样的问题,一个业务部门由若干业务组构成,需要筛选出每个业务组里业绩前N名的业务员。这其实是一个分组排序的 ... [详细]
  • Windows2003 IIS上设置301定向,实现不带www域名跳转带www域名的方法
    打开IIS,建一个网站,主机头用不带www的域名,随便指向一个目录。然后在这个网站上点右键,属性--主目录--重定向到URL如图ÿ ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
author-avatar
暗影HK4164286
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有