Archive for the ‘数据库问题解决方案’ Category

三月 21st, 2012

Windows 7 环境下提示RemoteOperationException: ERROR: Wrong password for user的解决方案

Windows 7 环境下提示RemoteOperationException: ERROR: Wrong password for user的解决方案已关闭评论, 数据库问题解决方案, by 小哥.

RemoteOperationException: ERROR: Wrong password for user
打开控制面板—>管理工具—>本地安全策略->本地策略->用户权利指派->作为批处理作业登陆->添加当前用户例如administrator

三月 19th, 2012

ORACLE 数据库如何查看表空间利用率

ORACLE 数据库如何查看表空间利用率已关闭评论, 数据库问题解决方案, by 小哥.

SELECT UPPER(F.TABLESPACE_NAME) “表空间名”,
D.TOT_GROOTTE_MB “表空间大小(M)”,
D.TOT_GROOTTE_MB – F.TOTAL_BYTES “已使用空间(M)”,
TO_CHAR(ROUND((D.TOT_GROOTTE_MB – F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,
2),
‘990.99’)||’%’ “已使用(%)”,
F.TOTAL_BYTES “空闲空间(M)”,
F.MAX_BYTES “最大块(M)”
FROM (SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
FROM SYS.DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) F,
(SELECT DD.TABLESPACE_NAME,
ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
FROM SYS.DBA_DATA_FILES DD
GROUP BY DD.TABLESPACE_NAME) D
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY F.TABLESPACE_NAME;

三月 19th, 2012

ORACLE 数据库如何增加表空间容量 回收表空间利用率

ORACLE 数据库如何增加表空间容量 回收表空间利用率已关闭评论, 数据库问题解决方案, by 小哥.

经测试Oracle支持最大单个数据文件大小是32767.98MB ,如果您的数据超过了这个32GB那么你在往这个表空间中写入数据就会报错

如下提示 ORA-01658: 无法为表空间 USERS 中的段创建 INITIAL 区

Q:那怎么增加表空间呢?

ALTER TABLESPACE USERS ADD DATAFILE ‘/OPT/ORACLE/ORADATA/CMSAHTES/USERS02.DBF’ SIZE 10240M AUTOEXTEND ON MAXSIZE 30720M

Q:那怎么知道我是否已经添加成功呢?

SELECT FILE_NAME,FILE_ID,TABLESPACE_NAME FROM DBA_DATA_FILES WHERE TABLESPACE_NAME=’USERS’

Q:那我要删除单个数据文件呢?

ALTER TABLESPACE USERS DROP DATAFILE ‘/OPT/ORACLE/ORADATA/CMSAHTES/USERS02.DBF’

Q:如何回收表空间利用率?

ALTER DATABASE DATAFILE ‘/OPT/ORACLE/ORADATA/CMSAHTES/USERS01.DBF’ RESIZE 10240M;

注意一定要知道 已经了占用了多少空间

三月 16th, 2012

ORACLE 数据库如何通过修改数据文件路径进行数据迁移

ORACLE 数据库如何通过修改数据文件路径进行数据迁移已关闭评论, 数据库问题解决方案, by 小哥.

SQL>CONN /AS SYSDBA

SQL>CREATE PFILE=’C:\1.ORA’ FROM SPFILE;

SQL>SHUTDOWN IMMEDIATE;

SQL>STARTUP NOMOUNT PFILE=’C:\1.ORA’;

SQL>CREATE CONTROLFILE REUSE DATABASE “ETL” NORESETLOGS ARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 3
MAXDATAFILES 32
MAXINSTANCES 16
MAXLOGHISTORY 1600
LOGFILE
GROUP 1 ‘C:\oracle\oradata\ETL\REDO01.LOG’ SIZE 50M,
GROUP 2 ‘C:\oracle\oradata\ETL\REDO02.LOG’ SIZE 50M,
GROUP 3 ‘C:\oracle\oradata\ETL\REDO03.LOG’ SIZE 50M
DATAFILE
‘C:\oracle\oradata\ETL\UNDOTBS01.DBF’,
‘C:\oracle\oradata\ETL\SYSTEM01.DBF’,
‘C:\oracle\oradata\ETL\SYSAUX01.DBF’,
‘C:\oracle\oradata\ETL\USERS01.DBF’,
‘D:\oradata\MBSJ.DBF’
CHARACTER SET ZHS16GBK;

SQL>ALTER DATABASE OPEN;

三月 6th, 2012

ORACLE 数据库备份恢复 exp和imp的使用方法

ORACLE 数据库备份恢复 exp和imp的使用方法已关闭评论, 数据库问题解决方案, by 小哥.

1、完全:
EXP  SYSTEM/SYSTEM@ORCL  FILE=C:\FULL.DMP  LOG=C:\FULL.DMP.LOG  FULL=Y  BUFFER=819200
如果要执行完全导出,必须具有特殊的权限

2、用户模式:
EXP  SONIC/SONIC@ORCL  FILE=C:\SONIC.DMP  LOG=C:\SONIC.DMP.LOG  OWNER=SONIC  BUFFER=819200
这样用户SONIC的所有对象被输出到文件中。

3、表模式:
EXP  SONIC/SONIC@ORCL  FILE=C:\SONIC.DMP  LOG=C:\SONIC.DMP.LOG  OWNER=SONIC  BUFFER=819200  TABLES=(TABLE1,TABLE2,TABLE3)
这样用户SONIC的表SONIC就被导出 (more…)

三月 6th, 2012

ORACLE 数据库如何通过命令创建表空间

ORACLE 数据库如何通过命令创建表空间已关闭评论, 数据库问题解决方案, by 小哥.

1.创建表空间无限制大小
create tablespace ETL
logging
datafile’/opt/oracle/oradata/etl/etl.dbf’
size 200M
autoextend on
next 200M
extent management local;

2.创建表空间限制大小
create tablespace ETL
logging
datafile’/opt/oracle/oradata/etl/etl.dbf’
size 200M
autoextend on
next 200M maxsize 2048M
extent management local;

3.创建临时表空间限制大小
create temporary tablespace etl_temp
tempfile ‘/opt/oracle/oradata/etl/etl_temp.dbf’
size 50M
autoextend on
next 50M maxsize 2048M
extent management local; (more…)

三月 5th, 2012

ORACLE 数据库 ora-00312 错误的解决方案

ORACLE 数据库 ora-00312 错误的解决方案已关闭评论, 数据库问题解决方案, by 小哥.

1、启动数据库,遇到ORA-00312 or ORA-00313错误,如:
ORA-00313: open failed for members of log group 4 of thread 1
ORA-00312: online log 3 thread 1: ‘/opt/oracle/oradata/ORCL/redo03.log’
从这里我们知道日志组1的数据文件损坏或丢失了
从报警文件可以看到更详细的信息
2、查看V$log视图:
SQL> select group#,sequence#,archived,status from v$log;

GROUP#  SEQUENCE# ARC STATUS

———- ———- — —————-

1         54  YES   INACTIVE

2         55  NO    CURRENT

3         53  YES   INACTIVE

可以知道,该组是非当前状态,而且已经归档。
3、用CLEAR命令重建该日志文件
SQL>alter database clear logfile group 3;
如果是该日志组还没有归档,则需要用
SQL>alter database clear unarchived logfile group 3;
4、打开数据库,重新备份数据库
SQL>alter database open;
5.数据库启动成功

三月 5th, 2012

ORALCE 数据库如何清除临时表空间

ORALCE 数据库如何清除临时表空间已关闭评论, 数据库问题解决方案, by 小哥.

1.设置db_create_file_dest参数(oracle

OMF管理存储文件的路径)
alter system set db_create_file_dest=’/opt/oracle/oradata/orcl’;(本人数据库数据文件存储路径);2.创建一个新的临时表空间
create temporary tablespace temp2;
此时新的临时表空间已经创建,数据文件存在/opt/oracle/oradata/orcl中,名称系统取的,表空间参数
是采用系统默认的参数;
3.设置默认的临时表空间
alter database default temporary tablespace temp2;

4.删除以前的默认临时表空间(就是数据量很大的那个临时表空间)
drop tablespace temp including contents and datafiles;

5.在创建一个新的临时表空,名称很上面删除的一样
create temporary tablespace temp;

6.设置默认表空间
alter database default temporary tablespace temp;

7删除开始新建的表空间
drop tablespace temp2;
因为是OMF方式创建的表空间,在删除时不用带including contents and datafiles 参数

三月 2nd, 2012

Sybase PowerDesigner 如何从数据库中加载数据表信息

Sybase PowerDesigner 如何从数据库中加载数据表信息已关闭评论, 数据库问题解决方案, by 小哥.

1.File->Reverse Enginner->Database->

2.选择数据库(share the DBMS definition)

3.Using a data source->

4.选择Connection profile->Configure…->

5.Connection Profile->Add Data Source->

6.Connection type(JDBC)->DBMS type(Oracle)->User name(user)->Password(password)->JDBC driver class(oracle.jdbc.OracleDriver)->JDBC connection URL(jdbc:oracle:thin:@192.168.50.248:1521:RACDB1)->JDBC driver jar file(请选择对应版本的的odbc14.jar,不要用自带的)->点击OK

7.wait…

二月 28th, 2012

ORALCE 数据库如何使用命令重建控制文件

ORALCE 数据库如何使用命令重建控制文件已关闭评论, 数据库问题解决方案, by 小哥.

SQL> startup nomount pfile=/u01/app/oracle/admin/orcl/pfile/init.ora.11920112840

ORACLE 例程已经启动。

Total System Global Area  595591168 bytes
Fixed Size                  1291940 bytes
Variable Size             167774556 bytes
Database Buffers          419430400 bytes
Redo Buffers                7094272 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE “ORCL” NORESETLOGS NOARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 3
MAXDATAFILES 32
MAXINSTANCES 16
MAXLOGHISTORY 1600
LOGFILE
GROUP 1 (‘/u01/app/oracle/oradata/orcl/redo01.log’) size 20480k ,
GROUP 2 (‘/u01/app/oracle/oradata/orcl/redo02.log’) size 20480k,
GROUP 3 (‘/u01/app/oracle/oradata/orcl/redo03.log’) size 20480k
DATAFILE
‘/u01/app/oracle/oradata/orcl/UNDOTBS01.DBF’,
‘/u01/app/oracle/oradata/orcl/SYSTEM01.DBF’,
‘/u01/app/oracle/oradata/orcl/SYSAUX01.DBF’,
‘/u01/app/oracle/oradata/orcl/USERS01.DBF’
CHARACTER SET ZHS16GBK;

控制文件已创建。 (more…)