存档
今天下午用手工写create database命令的方式创建了一个测试库demo,执行了catalog.sql,catproc.sql,pupbld.sql这三个脚本后,也用orapwd工具创建了密码文件:
orapwd file=e:\oracle\db_1\database\orapwdemo.ora password=db entries=10
因为那台机器上原本有一个oracle实例在跑,所以就没有改listener.ora文件的内容。
在测试库demo的本机上连接实例demo的时候,没有问题。
set oracle_sid=demo
sqlplus /nolog
conn / as sysdba
能够连上!
C:\Documents and Settings\Administrator>set oracle_sid=demo
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 8月 10 17:28:21 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
已连接。
SQL> show parameter db_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string demo
但是在远程电脑上,用system用户可以连接,用sys连接的时候报错:
SQL> conn sys/db@demo178 as sysdba
ERROR:
ORA-01031: insufficient privileges
解决办法:
下面的语法在oracle 10.2.0.1上面成功执行完成。在windows-xp和ubuntu上都成功创建了数据库实例。
CREATE DATABASE demo
MAXDATAFILES 500
MAXINSTANCES 10
MAXLOGFILES 32
NOARCHIVELOG
DATAFILE
'E:\ORACLE\ORADATA\DEMO\SYSTEM01.DBF'
SIZE 300M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE 'E:\ORACLE\ORADATA\DEMO\SYSAUX01.DBF'
SIZE 300M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE 'E:\ORACLE\ORADATA\DEMO\TEMP01.DBF' SIZE 100M
AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
UNDO TABLESPACE "UNDOTBS1"
DATAFILE 'E:\ORACLE\ORADATA\DEMO\UNDOTBS01.DBF' SIZE 200M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
DEFAULT TABLESPACE USERS
DATAFILE 'E:\ORACLE\ORADATA\DEMO\USERS01.DBF' SIZE 100M
LOGFILE
GROUP 1 ('E:\ORACLE\ORADATA\DEMO\REDO01.LOG') SIZE 50M,
GROUP 2 ('E:\ORACLE\ORADATA\DEMO\REDO02.LOG') SIZE 50M,
GROUP 3 ('E:\ORACLE\ORADATA\DEMO\REDO03.LOG') SIZE 50M
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16;
手工创建完数据库后,要执行创建数据字典的sql文件。
在sqlplus中执行:
sql> @$ORACLE_HOME/rdbms/admin/catalog.sql;
sql> @$ORACLE_HOME/rdbms/admin/catproc.sql
sql> @$ORACLE_HOME/sqlplus/admin/pupbld.sql;
生成密码文件
在目录$ORACLE_HOME/dbs下面必须有密码文件,才能使得远程用户以sys连接数据库。oracle10g中的密码文件名称格式为:pwd$oracle_sid.ora
用命令工具生成:
orapwd file=$ORACLE_HOME/dbs/pwd$ORACLE_SID.ora password=test123 entries=10
这样就在目录$ORACLE_HOME/dbs下面生成了密码文件:pwd$ORACLE_SID.ora,密码为:test123,允许最多10个用户以sys连接。
————————————————————————————————————
——— 本文为andkylee个人原创,请在尊重作者劳动成果的前提下进行转载;
——— 转载务必注明原始出处 : http://www.dbainfo.net
——— 关键字: oracle10g create database command line 命令行创建数据库
no-gui windows linux
————————————————————————————————————
手动创建数据库的时候报ORA-02778错误。ORA-02778: Name given for the log directory is invalid
原因是 :$ORACLE_BASE/admin/$ORACLE_SID里面的一些目录没有创建好,比如:bdump,cdump,pfile,udump
另外:oracle 10G的log_archive_format 参数不能随便改,否则会启动不了数据库.
会报以下错误:ORA-32004: obsolete and/or deprecated parameter(s) specified
ORA-19905: log_archive_format must contain %s, %t and %r
解决办法 :修改后以pfile方式进去,创建spfile.
sql server 2005不支持备份压缩。很奇怪怎么不支持呢? sybase在ASE12.x都支持备份压缩了。
自sql server 2008才开始支持备份压缩。虽然只有 SQL Server 2008 Enterprise 及更高版本支持创建压缩的备份,但从 SQL Server 2008 开始,每个版本都可以还原压缩的备份。
限制
压缩的备份具有以下限制条件:
压缩的备份和未压缩的备份不能共存于一个媒体集中。
早期版本的 SQL Server 无法读取压缩的备份。
NTbackup 无法共享包含压缩的 SQL Server 备份的磁带。
压缩备份的性能影响
因为相同数据的压缩的备份比未压缩备份小,所以压缩备份所需的设备 I/O 通常较少,因此通常可大大提高备份速度。
默 认情况下,压缩会显著增加 CPU 的使用,并且压缩进程所消耗的额外 CPU 可能会对并发操作产生不利影响。因此,您可能需要在会话中创建低优先级的压缩备份,其 CPU 使用率受资源调控器限制。有关详细信息,请参阅如何使用资源调控器限制备份压缩的 CPU 使用量 (Transact-SQL)。
若要很好地了解备份 I/O 的性能表现,可以通过评估以下类型的性能计数器来分别考察进入设备或来自设备的备份 I/O:
Windows I/O 性能计数器,例如物理磁盘计数器
SQLServer:Backup Device 对象的 Device Throughput Bytes/sec 计数器
SQLServer:Databases 对象的 Backup/Restore Throughput/sec 计数器
有关 Windows 计数器的信息,请参阅 Windows 帮助。有关如何使用 SQL Server 计数器的信息,请参阅使用 SQL Server 对象。
在用dbcc checkdb 对数据库进行检查的时候,在数据结果的头部报下面的错误:
扩展盘区 (1:9508664) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508672) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508680) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508688) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508696) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508704) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508712) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508720) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508728) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508736) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508744) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508760) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508776) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508792) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508800) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508808) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508816) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
DBCC 语句的修复级别导致回避了此修复。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508824) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508832) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
扩展盘区 (1:9508840) (属于数据库 ID 7 )在 GAM 中标记为已分配,但没有 SGAM 或 IAM 分配过该盘区。
消息 8905 ,级别 16 ,状态 1 ,服务器 SERVER ,行 1
本文介绍如何识别当前的 Microsoft SQL Server 版本号和相应的产品或 Service Pack 级别。同时介绍如何识别正在使用的 SQL Server 具体版本。
如何确定正在运行的 SQL Server 2008 为哪个版本
若要确定正在运行的 SQL Server 2008 为哪个版本,请使用 SQL Server Management Studio 连接到 SQL Server 2008 ,然后运行下列 Transact-SQL 语句。
SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')
运行结果如下:
- 产品版本(例如,10.0.1600.22 )
- 产品级别(例如,RTM )
- 版本(例如, Enterprise )
例如,运行结果可能类似于如下内容。
收起该表格展开该表格
10.0.1600.22 |
RTM |
Enterprise Edition |
下表列出了 Sqlservr.exe 版本号。
收起该表格展开该表格
版本
Sqlservr.exe
RTM
2007.100.1600.0
SQL Server 2008 Service Pack 1
2007.100.2531.0
PAD_INDEX
Specifies the space to leave open on each page (node) in the intermediate levels of the index. The PAD_INDEX option is useful only when FILLFACTOR is specified, because PAD_INDEX uses the percentage specified by FILLFACTOR. By default, SQL Server ensures that each index page has enough empty space to accommodate at least one row of the maximum size the index can have, given the set of keys on the intermediate pages. If the percentage specified for FILLFACTOR is not large enough to accommodate one row, SQL Server internally overrides the percentage to allow the minimum.
Note The number of rows on an intermediate index page is never less than two, regardless of how low the value of
FILLFACTOR
FILLFACTOR = fillfactor
Specifies a percentage that indicates how full SQL Server should make the leaf level of each index page during index creation. When an index page fills up, SQL Server must take time to split the index page to make room for new rows, which is quite expensive. For update-intensive tables, a properly chosen FILLFACTOR value yields better update performance than an improper FILLFACTOR value. The value of the original FILLFACTOR is stored with the index in sysindexes .
When FILLFACTOR is specified, SQL Server rounds up the number of rows to be placed on each page. For example, issuing CREATE CLUSTERED INDEX ... FILLFACTOR = 33 creates a clustered index with a FILLFACTOR of 33 percent. Assume that SQL Server calculates that 5.2 rows is 33 percent of the space on a page. SQL Server rounds so that six rows are placed on each page.
Note An explicit FILLFACTOR setting applies only when the index is first created. SQL Server does not dynamically keep the specified percentage of empty space in the pages.
User-specified FILLFACTOR values can be from 1 through 100. If no value is specified, the default is 0. When FILLFACTOR is set to 0, only the leaf pages are filled. You can change the default FILLFACTOR setting by executing sp_configure .
Use a FILLFACTOR of 100 only if no INSERT or UPDATE statements will occur, such as with a read-only table. If FILLFACTOR is 100, SQL Server creates indexes with leaf pages 100 percent full. An INSERT or UPDATE made after the creation of an index with a 100 percent FILLFACTOR causes page splits for each INSERT and possibly each UPDATE.
Smaller FILLFACTOR values, except 0, cause SQL Server to create new indexes with leaf pages that are not completely full. For example, a FILLFACTOR of 10 can be a reasonable choice when creating an index on a table known to contain a small portion of the data that it will eventually hold. Smaller FILLFACTOR values also cause each index to take more storage space.
The following table illustrates how the pages of an index are filled up if FILLFACTOR is specified.
FILLFACTOR | Intermediate page | Leaf page |
---|---|---|
0 percent | One free entry | 100 percent full |
1 - 99 percent | One free entry | <= FILLFACTOR percent full |
100 percent | One free entry | 100 percent full |
One free entry is the space on the page that can accommodate another index entry.
Important Creating a clustered index with a FILLFACTOR affects the amount of storage space the data occupies because SQL Server redistributes the data when it creates the clustered index.
示例:
This example uses the FILLFACTOR clause set to 100. A FILLFACTOR of 100 fills every page completely and is useful only when you know that index values in the table will never change.
SET NOCOUNT OFF USE pubs IF EXISTS (SELECT name FROM sysindexes WHERE name = 'zip_ind') DROP INDEX authors.zip_ind GO USE pubs GO CREATE NONCLUSTERED INDEX zip_ind ON authors (zip) WITH FILLFACTOR = 100 GO
create table 时: [WITH FILLFACTOR = fillfactor ]
Specifies how full SQL Server should make each index page used to store the index data. User-specified fillfactor values can be from 1 through 100, with a default of 0. A lower fill factor creates the index with more space available for new index entries without having to allocate new space.
Status bits, some of which can be set by using ALTER DATABASE as noted:
1 = autoclose (ALTER DATABASE)
4 = select into/bulkcopy (ALTER DATABASE using SET RECOVERY)
8 = trunc. log on chkpt (ALTER DATABASE using SET RECOVERY)
16 = torn page detection (ALTER DATABASE)
32 = loading
64 = pre recovery
128 = recovering
256 = not recovered
512 = offline (ALTER DATABASE)
1024 = read only (ALTER DATABASE)
2048 = dbo use only (ALTER DATABASE using SET RESTRICTED_USER)
4096 = single user (ALTER DATABASE)
32768 = emergency mode
4194304 = autoshrink (ALTER DATABASE)
1073741824 = cleanly shutdown
Multiple bits can be ON at the same time.
status2
16384 = ANSI null default (ALTER DATABASE)
65536 = concat null yields null (ALTER DATABASE)
131072 = recursive triggers (ALTER DATABASE)
1048576 = default to local cursor (ALTER DATABASE)
8388608 = quoted identifier (ALTER DATABASE)
33554432 = cursor close on commit (ALTER DATABASE)
67108864 = ANSI nulls (ALTER DATABASE)
268435456 = ANSI warnings (ALTER DATABASE)
536870912 = full text enabled (set by using sp_fulltext_database )