我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

oracle怎么写检查,怎么看oracle

如何检查oracle数据库性能

这种问题要回答好要求知识比较全面。

员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。成都创新互联坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供做网站、网站制作、微信公众号开发、电商网站开发,小程序设计,软件按需网站制作等一站式互联网企业服务。

1 从操作系统层次上看

看CPU 内存 swqp(交换分区)等使用率

2 从磁盘上看

主要看磁盘读写。可以用dd测磁盘读写的速度 也可以在业务高峰期检测磁盘的速率。

3 从数据库本身来看。

先要看数据库各个参数的值 。 如sga的大小,process的大小,redo日志的个数与大小等这些关系到性能的参数是否设置合理。

长期观察的方式就是看各个时期的AWR报告。里面有各种性能指标,以及按执行时间或资源排列的sql ,以及各种等待时间的排名。从这里面可以掌握数据库的长期的性能变化。

即时观察的方式就是利用各种sql 查询 数据库在当前时间的各个性能指标(AWR报告里面的各种指标也都是通过sql查询出来的)

还有对数据库整体的一个检查:

如 表的大小,表是否需要分区而没有分区,索引是否创建,索引是否失效,开发人员写的sql是否正确使用到了索引,频繁使用的sql是否有绑定变量,有频繁大批量增删改的表是否存在高水位。。。

额 总之,这个话题涉及的知识非常多,尽可能多的学习一些东西,祝你好运。

如何检查oracle服务是否启动

1、检查oracle监听服务运行状态,输入lsnrctl status命令来查看,看到提示信息TNS:no listener,表示监听没有启动,

2、监听没有启动,则需要输入lsnrctl start启动监听服务,当看到提示信息"The command completed successfully",则表示启动成功,

如何对Oracle进行安全健康检查

数据库健康检查主要涉及以下四个方面:

系统和数据库的可用性

系统和数据库的完整性

系统、数据库和应用的性能

系统备份和恢复方案评估

根据用户需求的不同,健康检查服务可能包含以下内容:

1.日志分析 检查并分析系统日志及跟踪文件,发现并排除数据库系统错误隐患,正常的日志分析对于数据库来说至关重要。

2.数据库性能分析 通过收集信息对数据库进行性能分析,得出数据库的运行状况报告,帮助用户了解数据库的健康状况,为用户的优化、扩容、升级等工作提供有力的支撑。

3.空间检测 检查数据库空间的使用情况,提供空间使用报告,为用户合理规划空间使用、充分利用资源提供建议。

4.检查Oracle/Mysql等数据库的结构、初始化参数、主要配置文件

5.检查系统和数据库判断是否需要应用最新的补丁集

6.检查数据库备份的完整性等

健康检查是数据库稳定运行的保障,业务系统都应当进行例行的健康检查工作。

Oracle的查询语句怎么写

1.create user username identified by password;//建用户名和密码oracle ,oracle

2.grant connect,resource,dba to username;//授权 grant connect,resource,dba,sysdba to username;

3.connect username/password//进入。

4.select table_name,column_name from user_tab_columns where table_name='TABLE_NAME';//查询表中的表名,字段名等等。 最后的table_name要大写。

5. 如何执行脚本SQL文件? SQL@PATH/filename.sql;

7.查询用户下的所有表 select distinct table_name from user_tab_columns; ===仅显示一列表名。

8.如何搜索出前N条记录?

select * from tablename where rownumn;--足矣。(--是注释用的标记)

9.查找用户下的所有表:select * from tab; --查询该用户下的所有表及视图(显示表名tname, 类型tabname和clusterid)

2、显示当前连接用户

SQL show user –不能用在sql窗口 只能用在command命令窗口。

3、查看系统拥有哪些用户

SQL select * from all_users;

4、新建用户并授权

SQL create user a identified by a;(默认建在SYSTEM表空间下)

SQL grant connect,resource to a;

5、连接到新用户

SQL conn a/a –或者是connect a/a

6、查询当前用户下所有对象

SQL select * from tab; --table或是view

7、建立第一个表

SQL create table a(a number);

8、查询表结构

SQL desc a

9、插入新记录

SQL insert into a values(1);

10、查询记录

SQL select * from a;

11、更改记录

SQL update a set a=2;

12、删除记录

SQL delete from a;

13、回滚

SQL roll;

SQL rollback;

14、提交

SQL commit;

select * from

(select t.*,dense_rank() over (order by cardkind) rank from cardkind t)

where rank = 2;

46. 如何在字符串里加回车?

select 'Welcome to visit'||chr(10)||'' from dual ; --‘||chr(10)||’作为换行符

53. 如何使select语句使查询结果自动生成序号?

select rownum COL from table; --主要就是oracle中引入了rownum

54. 如何知道数据裤中某个表所在的tablespace?

select tablespace_name from user_tables where table_name='TEST'; --table_name名称要大写。

select * from user_tables中有个字段TABLESPACE_NAME,(oracle);

select * from dba_segments where …;

55. 怎么可以快速做一个和原表一样的备份表?

create table new_table as (select * from old_table);

59. 请问如何修改一张表的主键?

alter table aaa drop constraint aaa_key ;

alter table aaa add constraint aaa_key primary key(a1,b1) ;

60. 改变数据文件的大小?

用 ALTER DATABASE .... DATAFILE .... ;

手工改变数据文件的大小,对于原来的 数据文件有没有损害。

61. 怎样查看ORACLE中有哪些程序在运行之中?

查看v$session表

62. 怎么可以看到数据库有多少个tablespace?

select * from dba_tablespaces;

怎么写一个脚本检查oracle数据库表空间,如果利用率超过80%,就执行一条加表空间的SQL

@echo offcls

color 03

@echo ***********************************************************************

@echo * Oracle表空间使用查看 *

@echo ***********************************************************************

@echo.

set /p databasename=数据库名:

set /p databaseusername=数据库用户名:

set /p databasepasswords=数据库密码:

set /p backupFilePath=结果文件存放路径(相对或绝对路径、可空):

@echo offcls

@echo ***********************************************************************

@echo * Oracle表空间使用查看 *

@echo ***********************************************************************

if exist %temp%\CheckTablespaces_Sobey.sql del /f /q %temp%\CheckTablespaces_Sobey.sql

if "%backupFilePath%"=="" set backupFilePath=AutoCreateLookTablespacesFolder

if not exist %backupFilePath% md %backupFilePath%

set dataFilePath=%backupFilePath%\%databasename%

if exist %dataFilePath%.sql set dataFilePath=%backupFilePath%\%databasename%%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

@echo spool %dataFilePath%.sql%temp%\CheckTablespaces_Sobey.sql

@echo set termout off%temp%\CheckTablespaces_Sobey.sql

@echo set linesize 200%temp%\CheckTablespaces_Sobey.sql

@echo set pagesize 200%temp%\CheckTablespaces_Sobey.sql

@echo SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB "大小(MB)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用",TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') ^|^| '%' "使用比" 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 1;%temp%\CheckTablespaces_Sobey.sql

@echo spool off%temp%\CheckTablespaces_Sobey.sql

@echo exit;%temp%\CheckTablespaces_Sobey.sql

sqlplus %databaseusername%/%databasepasswords%@%databasename% @%temp%\CheckTablespaces_Sobey.sql

if exist %temp%\CheckTablespaces_Sobey.sql del /f /q %temp%\CheckTablespaces_Sobey.sql

color 0a

@echo.

@echo ***********************************************************************

@echo * 执行完毕,请先检查是否有错误发生。

@echo * 请在:%dataFilePath%.sql中查看详细,谢谢!

@echo ***********************************************************************

@echo.

@echo 批处理中止

pause

如何对Oracle进行健康检查

看 oracle监听是否启动 在CMD下运行如下命令就可以

lsnrctl status

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=spcc)(PORT=1525)))

TNS-12541: TNS:无监听器

TNS-12560: TNS: 协议适配器错误

TNS-00511: 无监听器

32-bit Windows Error: 61: Unknown error

LSNRCTL start listener1

启动tnslsnr:请稍候...

这表示没有启动。。

方法2:

如果是LINUX系统可以通过如下命令看进程在不在

ps -ef|grep lsn

看 oracle监听是否启动 在CMD下运行如下命令就可以

lsnrctl status

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=spcc)(PORT=1525)))

TNS-12541: TNS:无监听器

TNS-12560: TNS: 协议适配器错误

TNS-00511: 无监听器

32-bit Windows Error: 61: Unknown error

LSNRCTL start listener1

启动tnslsnr:请稍候...

这表示没有启动。。

方法2:

如果是LINUX系统可以通过如下命令看进程在不在

ps -ef|grep lsn

启动步骤:注意$代表shell命令提示符,这里的oracle是9.0以上版本。

1.$ su - oracle

2.$ sqlplus / nolog

3.sql conn / as sysdba

4.sql startup (一般不需要加参数,只要设置好环境变量)

5.sql quit (退出sql模式)

6.$ lsnrctl start (启动监听器)

关闭oracle

1.$ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序)

2.$ sqlplus /nolog

启动步骤:注意$代表shell命令提示符,这里的oracle是9.0以上版本。

1.$ su - oracle

2.$ sqlplus / nolog

3.sql conn / as sysdba

4.sql startup (一般不需要加参数,只要设置好环境变量)

5.sql quit (退出sql模式)

6.$ lsnrctl start (启动监听器)

关闭oracle

1.$ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序)

2.$ sqlplus /nolog

3.sqlshutdown 其参数 :shutdown有四个参数,四个参数的含义如下:

Normal 需要等待所有的用户断开连接

Immediate 等待用户完成当前的语句

Transactional 等待用户完成当前的事务

Abort 不做任何等待,直接关闭数据库

normal需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接

immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。

transactional 在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。

abort 执行强行断开连接并直接关闭数据库。

前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用!

2经常遇到的问题:

1)权限问题,解决方法,切换到oracle用户;

2)没有关闭监听器 ,解决方法:关闭监听器

3)有oracle实例没有关闭,解决办法:关闭oracle实例

4)环境变量设置不全,解决办法:修改环境变量


分享文章:oracle怎么写检查,怎么看oracle
文章分享:http://shouzuofang.com/article/dsssidd.html

其他资讯