1. 执行以下SQL语句查找存放表空间的数据文件的路径
FROM dba_data_files ddf
WHERE ddf.tablespace_name = 'APPS_TS_TX_DATA';
2. 用system/manager登录PL/SQL Developer
新建一个command窗口
运行如下SQL语句:
ALTER TABLESPACE APPS_TS_TX_DATA ADD DATAFILE '/d01/dba/vis01data/tx_data14.dbf' SIZE 100M;
(增加100M到APPS_TS_TX_DATA表空间)
注意:执行上面命令是增加tx_data**.dbf文件, **请用“不存在SQL结果”里的数字代替,一般为SQL中查询中的最大数字加1。
例如:
通过1查询到目前APPS_TS_TX_DATA表空间中共有以下数据文件:
/d01/dba/vis01data/tx_data1.dbf
/d01/dba/vis01data/tx_data2.dbf
...
/d01/dba/vis01data/tx_data14.dbf
通过2新增加表空间:
/d01/dba/vis01data/tx_data15.dbf (新增加的表空间的编号一般为前一数字+1,即15)
本文链接
COMMIT是一个非常快的操作,当我们发布commit命令时,真正困难的动作已经完成,在数据库中已经执行了数据更改,所以已经完成了99%的任务。
例如:下列操作已经产生:
1.在SGA(Buffer Cache)中已经生成了undo块;
2.在SGA(Buffer Cache)中已经生成了产生改变的数据块和索引块;
3.在REDO LOG BUFFER生成了前面两项的redo信息;
4.依赖于前三项产生的数据量大小以及操作需要的时间,buffer中的数据可能已经有一部分输出到了磁盘;
5.所有需要的锁已经获得;
当执行COMMIT命令时,只执行如下操作:
1.为事务生成SCN:SCN是ORACLE数据库的一种计时信息,用以保证事务的顺序性,同时还用于失败恢复和保证数据库的读一致性和检查点,无论何时何人提交,SCN自动加1;
2.将事务相关的未写入redo log file中的redo信息从redo log buffer写入到redo log file,这才是真实的COMMIT,这步操作完成,说明我们已经完成COMMIT,事务从V$TRANSACTION中移除;
3.V$LOCK中记录的SESSION关于该事务的锁会释放,其他需要这些锁的事务被唤醒;
4.执行块清理,清理块头保存的事务信息。
本文链接
1.查询数据库当前进程的连接数:
select count(*) from v$process;
2.查看数据库当前会话的连接数:
elect count(*) from v$session;
3.查看数据库的并发连接数:
select count(*) from v$session where status='ACTIVE';
4.查看当前数据库建立的会话情况:
select sid,serial#,username,program,machine,status from v$session;
5.查询数据库允许的最大连接数:
select value from v$parameter where name = 'processes';
或者命令:show parameter processes;
6.修改数据库允许的最大连接数:
alter system set processes = 300 scope = spfile;
(需要重启数据库才能实现连接数的修改)
重启数据库:
SQL>shutdown immediate;
SQL>startup;
查看当前有哪些用户正在使用数据:
SQL>select osuser,a.username,cpu_time/executions/1000000||'s',sql_fulltext,machine
SQL>from v$session a,v$sqlarea b
SQL>where a.sql_address = b.address
SQL>order by cpu_time/executions desc;
备注:UNIX 1个用户session对应一个操作系统process,而Windows体现在线程。
启动oracle
su - oracle
SQL>sqlplus system/pwd as sysdba //进入sql
SQL>startup //启动数据库
SQL>lsnrctl start //启动监听
sqlplus "/as sysdba"
SQL>shutdown immediate; //关闭数据库
SQL>startup mount;
SQL>alter database open;
本文链接