ORACLE 里面的 SQL PROFILE 是怎么个概念? 怎么起作用?
如何限制oracle中用户的资源的使用(包括连接时间和空闲时间等)可以创建不同的资源限制,最好将ALTER SYSTEM SET RESOURCE_LIMIT=TRUE。
写在init文件中:RESOURCE_LIMIT=TRUE ,不然下次启动可能失效。
create profile low_limits limit idle_time 10 --分钟 connect_time unlimited; --分钟然后把某种配置文件赋给某个用户:alter user youruser profile low_limits;然后可以查看:select profile from dba_users where username='YOURUSER';select * from dba_profile where profile='low_limits';一、目的:Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用Create Profile命令创建一个Profile,用它来实现对数据库资源的限制使用,如果把该profile分配给用户,则该用户所能使用的数据库资源都在该profile的限制之内。
二、条件:创建profile必须要有CREATE PROFILE的系统权限。
为用户指定资源限制,必须:1.动态地使用alter system或使用初始化参数resource_limit使资源限制生效。
该改变对密码资源无效,密码资源总是可用。
SQL> show parameter resource_limitNAME TYPE VALUE------------------------------------ ----------- ------------------------------resource_limit boolean FALSESQL> alter system set resource_limit=true;系统已更改。
SQL> show parameter resource_limit;NAME TYPE VALUE------------------------------------ ----------- ------------------------------resource_limit boolean TRUESQL>2.使用create profile创建一个定义对数据库资源进行限制的profile。
3.使用create user 或alter user命令把profile分配给用户。
三、语法: CREATE PROFILE profileLIMIT { resource_parameters | password_parameters } [ resource_parameters | password_parameters ]... ; { { SESSIONS_PER_USER | CPU_PER_SESSION | CPU_PER_CALL | CONNECT_TIME | IDLE_TIME | LOGICAL_READS_PER_SESSION | LOGICAL_READS_PER_CALL | COMPOSITE_LIMIT } { integer | UNLIMITED | DEFAULT }| PRIVATE_SGA { integer [ K | M ] | UNLIMITED | DEFAULT }}{ { FAILED_LOGIN_ATTEMPTS | PASSWORD_LIFE_TIME | PASSWORD_REUSE_TIME | PASSWORD_REUSE_MAX | PASSWORD_LOCK_TIME | PASSWORD_GRACE_TIME } { expr | UNLIMITED | DEFAULT }| PASSWORD_VERIFY_FUNCTION { function | NULL | DEFAULT }}四、语法解释:profile:配置文件的名称。
Oracle数据库以以下方式强迫资源限制: 1.如果用户超过了connect_time或idle_time的会话资源限制,数据库就回滚当前事务,并结束会话。
用户再次执行命令,数据库则返回一个错误, 2.如果用户试图执行超过其他的会话资源限制的操作,数据库放弃操作,回滚当前事务并立即返回错误。
用户之后可以提交或回滚当前事务,必须结束会话。
提示:可以将一条分成多个段,如1小时(1/24天)来限制时间,可以为用户指定资源限制,但是数据库只有在参数生效后才会执行限制。
Unlimited:分配该profile的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。
Default:指定为default意味着忽略对profile中的一些资源限制,Default profile初始定义对资源不限制,可以通过alter profile命令来改变。
Resource_parameter部分 Session_per_user:指定限制用户的并发会话的数目。
Cpu_per_session:指定会话的CPU时间限制,单位为百分之一秒。
Cpu_per_call:指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。
Connect_time:指定会话的总的连接时间,以分钟为单位。
Idle_time:指定会话允许连续不活动的总的时间,以分钟为单位,超过该时间,会话将断开。
但是长时间运行查询和其他操作的不受此限制。
Logical_reads_per_session:指定一个会话允许读的数据块的数目,包括从内存和磁盘读的所有数据块。
Logical_read_per_call:指定一次执行SQL(解析、执行和提取)调用所允许读的数据块的最大数目。
Private_sga:指定一个会话可以在共享池(SGA)中所允许分配的最大空间,以字节为单位。
(该限制只在使用共享服务器结构时才有效,会话在SGA中的私有空间包括私有的SQL和PL/SQL,但不包括共享的SQL和PL/SQL)。
Composite_limit:指定一个会话的总的资源消耗,以service units单位表示。
Oracle数据库以有利的方式计算cpu_per_session,connect_time,logical_reads_per_session和private-sga总的service unitsPassword_parameter部分: Failed_login_attempts:指定在帐户被锁定之前所允许尝试登陆的的最大次数。
Password_life_time:指定同一密码所允许使用的天数。
如果同时指定了password_grace_time参数,如果在grace period内没有改变密码,则密码会失效,连接数据库被拒绝。
如果没有设置password_grace_time参数,默认值unlimited将引发一个数据库警告,但是允许用户继续连接。
Password_reuse_time和password_reuse_max:这两个参数必须互相关联设置,password_reuse_time指定了密码不能...
oracle如何设置密码复杂度策略?设置密码复杂度策略后对当前用户是...
Oracle密码复杂度设置(Oracle_Password_Complexity)一、Oracle_Password_Complexity:SQL>alter system set resource_limit = true;SQL>@ $ORACLE_HOME/RDBMS/ADMIN/utlpwdmg.sql → [verify_function|verify_function_11G]SQL>alter profile default limit password_verify_function verify_function;# 取消Oracle密码复杂度检查:SQL>alter profile default limit password_verify_function null;SQL>SELECT profile,resource_type,resource_name,limit FROM dba_profiles WHERE resource_type='PASSWORD' AND profile='DEFAULT';1.FAILED_LOGIN_ATTEMPTS: 用户在登录尝试失败n次后被锁定。
2.PASSWORD_LOCK_TIME: 登录尝试失败达到指定次数,用户锁定时长,以“Day”为单位。
3.PASSWORD_LIFE_TIME: 用户口令的生命周期。
4.PASSWORD_GRACE_TIME: 表示用户口令使用时间超过其生命周期后,可以延续使用的天数,并且可延续时间内登录会有相应口令即将过期的提示。
5.PASSWORD_REUSE_TIME: 指定了口令不能重用前的天数。
6.PASSWORD_REUSE_MAX: 在达到PASSWORD_REUSE_TIME指定时间后,要再次使用同一口令前必须改变的次数。
如:PASSWORD_REUSE_TIME=30,PASSWORD_REUSE_MAX=10,用户可以在30天以后重用该口令,要求口令必须被改变超过10次。
7.PASSWORD_VERIFY_FUNCTION: Oracle允许将复杂的PL/SQL密码验证脚本做为参数传递给PASSWORD_VERIFY_FUNCTION。
并且其自己提供了一个默认的脚本,但是用户可以创建自己的验证规则或使用第三方软件验证。
8.Password Verify Function:When you create a password verify function for verifying the user password, this function can verify the following password characteristics:1.The minimum number of characters for the password.2.The characters that the password must contain, such as when a password should contain a specific number of numeric, alphabetic or special characters.3.Whether or not the password can be the same as the username.Whether or not the new password can be similar to the previous password.Oracle 11g数据库密码区分大小写的设置 → SEC_CASE_SENSITIVE_LOGON = TRUE.
oracle环境,有一个用户的密码忘掉了,并且用户过期,怎么能够使用...
在10g以前,你可以用有权限的用户登录,查询到此用户密码的密文,再用密文改口令:查询用户口令的密文select password from dba_users where username='';再修改口令:alter user USER1 identified by value '密文‘;要想口令不过期,先要知道用户的profile是什么,再改这个profile的属性查询用户的profileselect profile from dba_users where username='';修改此profile的的属性ALTER PROFILE LIMIT PASSWORD_LIFE_TIME UNLIMITED;
oracle中概要文件的定义是什么?
展开全部 首先提这种问题是可悲的,会百度提问,就不会自己去google一下。
这是我google出来的Oracle系统为了合理分配和使用系统的资源提出了概要文件的概念。
所谓概要文件,就是一份描述如何使用系统的资源(主要是CPU资源)的配置文件。
将概要文件赋予某个数据库用户,在用户连接并访问数据库服务器时,系统就按照概要文件给他分配资源。
在有的书中将其翻译为配置文件,其作用包括。
1、管理数据库系统资源。
利用Profile来分配资源限额,必须把初始化参数resource_limit设置为trueALTER SYSTEM SET resource_limit=TRUE SCOPE=BOTH;2、管理数据库口令及验证方式。
默认给用户分配的是DEFAULT概要文件,将该文件赋予了每个创建的用户。
但该文件对资源没有任何限制,因此管理员常常需要根据自己数据库系统的环境自行建立概要文件,下面介绍如何创建及管理概要文件。
示例:CREATE PROFILE pro_testLIMIT CPU_PER_SESSION 1000 --cpu每秒会话数任意一个会话所消耗的CPU时间量(时间量为1/100秒)CPU_PER_CALL 1000 --cpu每秒调用数任意一个会话中的任意一个单独数据库调用所消耗的CPU时间量(时间量为1/100秒)CONNECT_TIME 30 --允许连接时间任意一个会话连接时间限定在指定的分钟数内IDLE_TIME DEFAULT --允许空闲时间SESSIONS_PER_USER 10 --用户最大并行会话数(指定用户的会话数量)LOGICAL_READS_PER_SESSION 1000 --读取数/会话(单位:块)LOGICAL_READS_PER_CALL 1000 --读取数/调用(单位:块)PRIVATE_SGA 16K --专用sgaCOMPOSITE_LIMIT 1000000 --组合限制(单位:单元)FAILED_LOGIN_ATTEMPTS 10 --登录几次后PASSWORD_LOCK_TIME 10 --锁定时间(单位:天)PASSWORD_GRACE_TIME 120 --多少天后锁定PASSWORD_LIFE_TIME 60 --口令有效期(单位:天)PASSWORD_REUSE_MAX UNLIMITED --保留口令历史记录:保留次数(单位:次)PASSWORD_REUSE_TIME 120 --保留口令历史记录:保留时间(单位:天)PASSWORD_VERIFY_FUNCTION DEFAULT --启用口令复杂 ......
如何释放Oracle服务器过多的连接数
Oracle服务器连接数过多会当掉,把连接数过多的客户机网线拔出后,在远程Oracle上依然还会保留此用户的连接数,久久不能释放,上网查了下可以以下面方法解决。
通过profile可以对用户会话进行一定的限制,比如IDLE时间。
将IDLE超过一定时间的会话断开,可以减少数据库端的会话数量,减少资源耗用。
使用这些资源限制特性,需要设置resource_limit为TRUE: [oracle@test126 udump]$ sqlplus “/ as sysdba” SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 13 07:58:21 2006 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning and Data Mining options SQL> show parameter resource NAME TYPE VALUE ———————————— ———– —————————— resource_limit boolean TRUE resource_manager_plan string 该参数可以动态修改: SQL> alter system set resource_limit=true; System altered. 数据库缺省的PROFILE设置为: SQL> SELECT * FROM DBA_PROFILES; PROFILE RESOURCE_NAME RESOURCE LIMIT ——————– ——————————– ——– ————— DEFAULT COMPOSITE_LIMIT KERNEL UNLIMITED DEFAULT SESSIONS_PER_USER KERNEL UNLIMITED DEFAULT CPU_PER_SESSION KERNEL UNLIMITED DEFAULT CPU_PER_CALL KERNEL UNLIMITED DEFAULT LOGICAL_READS_PER_SESSION KERNEL UNLIMITED DEFAULT LOGICAL_READS_PER_CALL KERNEL UNLIMITED DEFAULT IDLE_TIME KERNEL UNLIMITED DEFAULT CONNECT_TIME KERNEL UNLIMITED DEFAULT PRIVATE_SGA KERNEL UNLIMITED DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10 DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED PROFILE RESOURCE_NAME RESOURCE LIMIT ——————– ——————————– ——– ————— DEFAULT PASSWORD_REUSE_TIME PASSWORD UNLIMITED DEFAULT PASSWORD_REUSE_MAX PASSWORD UNLIMITED DEFAULT PASSWORD_VERIFY_FUNCTION PASSWORD NULL DEFAULT PASSWORD_LOCK_TIME PASSWORD UNLIMITED DEFAULT PASSWORD_GRACE_TIME PASSWORD UNLIMITED 16 rows selected. 创建一个允许3分钟IDLE时间的PROFILE: SQL> CREATE PROFILE KILLIDLE LIMIT IDLE_TIME 3; Profile created. 新创建PROFILE的内容: SQL> col limit for a10 SQL> select * from dba_profiles where profile='KILLIDLE'; PROFILE RESOURCE_NAME RESOURCE LIMIT —————————— ——————————– ——– ———- KILLIDLE COMPOSITE_LIMIT KERNEL DEFAULT KILLIDLE SESSIONS_PER_USER KERNEL DEFAULT KILLIDLE CPU_PER_SESSION KERNEL DEFAULT KILLIDLE CPU_PER_CALL KERNEL DEFAULT KILLIDLE LOGICAL_READS_PER_SESSION KERNEL DEFAULT KILLIDLE LOGICAL_READS_PER_CALL KERNEL DEFAULT KILLIDLE IDLE_TIME KERNEL 3 KILLIDLE CONNECT_TIME KERNEL DEFAULT KILLIDLE PRIVATE_SGA KERNEL DEFAULT KILLIDLE FAILED_LOGIN_ATTEMPTS PASSWORD DEFAULT KILLIDLE PASSWORD_LIFE_TIME PASSWORD DEFAULT PROFILE RESOURCE_NAME RESOURCE LIMIT —————————— ——————————– ——– ———- KILLIDLE PASSWORD_REUSE_TIME PASSWORD DEFAULT KILLIDLE PASSWORD_REUSE_MAX PASSWORD DEFAULT KILLIDLE PASSWORD_VERIFY_FUNCTION PASSWORD DEFAULT KILLIDLE PASSWORD_LOCK_TIME PASSWORD DEFAULT KILLIDLE PASSWORD_GRACE_TIME PASSWORD DEFAULT 16 rows selected. 测试用户: SQL> select username,profile from dba_users where username='EYGLE'; USERNAME PROFILE —————————— ——————– EYGLE DEFAULT 修改eygle用户的PROFILE使用新建的PROFILE: SQL> alter user eygle profile killidle; User altered. SQL> select username,profile from dba_users where username='EYGLE'; USERNAME PROFILE —————————— ——————– EYGLE KILLIDLE 进行连接测试: [oracle@test126 admin]$ sqlplus eygle/eygle@eygle SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 13 08:07:13 2006 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning and Data Mining options SQL> select username,profile from dba_users where username='EYGLE'; USERNAME PROFILE —————————— —————————— EYGLE KILLIDLE 当IDLE超过限制时间时,连接会被断开: SQL...
如何应对被公开的Oracle口令加密算法
由于Oracle数据库被广泛应用,其口令加密算法也是备受关注。
最早在1993年comp.databases.oracle.server新闻组中有人披露了加密算法的大部分细节。
十年后,一本名为《Special Ops Host and Network Security for Microsoft, Unix and Oracle》的书中补全了算法最重要的一个环节——DES算法的KEY。
至此,口令加密算法已无秘密可言。
接踵而来的是互联网上出现多个了Oracle口令破解工具。
Oracle在2007年推出的最新版本11g中,使用了新的更安全的加密算法,但是新算法的细节很快又在互联网上被公开。
为提供兼容,11g版本保留了11g以前版本使用的加密口令,利用这一漏洞仍然可以对11g版本的加密口令进行破解。
到底怎样才能保证数据库口令的安全呢?本文首先介绍Oracle数据库各版本口令加密算法的内容,然后针对算法重点介绍加强数据库安全性的应对措施。
口令加密算法 从Oracle7到Oracle 10gR2,使用DES算法对口令进行加密。
对算法进行分析,可以得出如下结论:口令不区分大小写,任意大小写组合均可登录;由于只使用固定KEY,只要用户名和口令相同,在任一DB中存放的加密口令都相同;由于采用了用户名和口令串接的方式,所以用户aaa、口令bbbccc的加密值与用户aaabbb、口令ccc完全相同。
Oracle 11g版本的加密口令存放在SYS.USER$表中的SPARE4列中,而PASSWORD列中仍保留以前版本加密口令。
由于客户端计算加密口令需要用到SALT,在建立连接时,服务器端将SALT明文传送给客户端程序。
Oracle 11g中新的口令加密算法中区分大小写;由于加入了随机数SALT,两个不同用户的口令即便完全相同,计算得到的SHA1的散列值也不同;不同DB中相同用户相同口令,SHA1散列值也可能不同。
目前,大多数破解工具的工作方式是得到加密口令后,对每一个可能的口令进行加密计算,比较计算结果而确定是否正确。
由此,抵御口令破解可以从三个方面着手:防止加密口令外泄;在加密口令落入黑客手中后,口令也是不可破解的,或尽量增加破解的时间;即便是口令被破解,也是无用的,不能存取数据库。
防止加密口令泄露 1.应用“最少权限”原则,尽量限制可存取加密口令用户的人数 在数据库中检查具有存取SYS.USER$或DBA_USERS权限的用户,并从不需要的用户中收回权限。
但是操作并不简单,这也是数据库管理工作的特点。
每一厂商的软件中都实现了SQL标准之外的扩充,并且每一版本都有差异。
限于篇幅,不可能对所有本文中建议的措施进行详细的解释说明,仅以此处检查权限为例展示DBA工作的复杂性。
本文中如未说明,则默认版本为11g。
应用于11g以前版本时,请读者确认是否需要修改。
检查权限主要的工具是数据字典视图(也可以直接存取SYS用户的基表,但基表的定义没有公布,官方不提供技术支持)。
视图DBA_TAB_PRIVS存放了数据库中数据对象上的授权信息。
假定用户A1和A2可以存取SYS.USER$表,检查在SYS用户USER$上有存取权限的用户,可执行如下语句: SELECT GRANTEE FROM DBA_TAB_PRIVS WHERE TABLE_NAME='USER$'; 我们已经知道用户A1和A2,都可以存取SYS.USER$表,但为什么在上面查询结果中没有出现呢?这是因为在Oracle的权限管理中,对一个表的存取权限还可以通过系统权限或角色赋予,而DBA_TAB_PRIVS中仅列出了直接的对象权限的授予信息。
对于SYS.USER$表而言,系统权限SELECT ANY DICTIONARY和角色DBA都包含了这一表的存取权限。
所以完整列出所有可存取这一表的用户应增加下面两条查询语句的结果: SELECT GRANTEE FROM DBA_SYS_PRIVS WHERE PRIVILEGE='SELECT ANY DICTIONARY'; SELECT GRANTEE FROM DBA_ROLE_PRIVS WHERE GRANTED_ROLE='DBA'; 通过上面的查询语句,还是会遗漏某些用户。
如果把DBA角色授权给另一角色Admin,然后又将Admin角色授权给另一用户NEWU,则此用户可存取SYS.USER$表,但在上述三个查询中并没有直接列出NEWU的名字(角色Admin会出现在第三个查询语句的结果中)。
显然,Oracle的授权构成了一棵树,完整的信息需要一段PL/SQL程序来完成。
(对于11g以前版本,还需要检查对DBA_USERS视图有存取权限的用户和角色。
SELECT_CATALOG_ROLE角色如被授权,则可以存取所有数据字典视图,但不能存取SYS的基表。
) 2.设定对加密口令存取的审计 如果当前系统中只有SYSDBA可以存取USER$,则一个变通办法是审计SYSDBA的所有操作,其中也包括对USER$的存取。
设置初始化参数audit_sys_operations =TRUE,重新启动数据库后激活对SYSDBA操作的审计。
审计文件的存放位置为: 11g版本中为:$ORACLE_BASE/admin/SID/ adump/ *.aud 11g以前版本为: $ORACLE_HOME/rdbms/audit/ *.aud。
严格限制和监视SYSDBA用户活动的最好办法是使用Oracle Database Vault组件。
3.在操作系统级限制对数据库数据文件的存取 SYSDBA用户的加密口令存放在$ORACLE_HOME/dbs下的口令文件orapw〈SID〉中。
SYS.USER$表同...
oracle用户锁定问题
展开全部--系统参数配置 connect sys/password@db_link as sysdbaselect * from dba_profiles where resource_name like 'FAILED_LOGIN_ATTEMPTS%';--1 DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10--连续错误连接10次用户被锁定--2.--查看被锁的用户select LOCK_DATE,username from dba_users where username='USERNAME'; LOCK_DATE为空说明没有锁定,非空为锁定。
-----SELECT S.USERNAME, DECODE(L.TYPE, 'TM', 'TABLE LOCK', 'TX', 'ROW LOCK', NULL) LOCK_LEVEL, O.OWNER, O.OBJECT_NAME, O.OBJECT_TYPE, S.SID, S.SERIAL#, S.TERMINAL, S.MACHINE, S.PROGRAM, S.OSUSER FROM V$SESSION S, V$LOCK L, DBA_OBJECTS OWHERE S.SID = L.SID AND O.OBJECT_ID = L.ID1 AND S.USERNAME IS NOT NULL;--3. --解锁方法ALTER USER USER_NAME ACCOUNT UNLOCK;--值的注意,在升级过程中,被锁的用户,有可能不值一个--重新升级-----设置系统的默认登录次数alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS 10; alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED; ------------数据管理员为这个用户单独设置了登录次数则要查找这个用户对应的profile,然后修改.可以查看用户的创建语名找到对应的设置。
Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用 Create Profile命令创建一个Profile,用它来实现对数据库资源的限制使用,如果把该profile分配给用户,则该用户所能使用的数据库资源都在该 profile的限制之内。
二、条件:创建profile必须要有CREATE PROFILE的系统权限。
为用户指定资源限制,必须:1.动态地使用alter system或使用初始化参数resource_limit使资源限制生效。
该改变对密码资源无效,密码资源总是可用。
SQL> show parameter resource_limitNAME TYPE VALUE———————————— ———– ——————————resource_limit boolean FALSESQL> alter system set resource_limit=true;系统已更改。
SQL> show parameter resource_limit;NAME TYPE VALUE———————————— ———– ——————————resource_limit boolean TRUESQL>2.使用create profile创建一个定义对数据库资源进行限制的profile。
3.使用create user 或alter user命令把profile分配给用户。
三、语法: CREATE PROFILE profile LIMIT { resource_parameters | password_parameters } [ resource_parameters | password_parameters ]… ;{{ SESSIONS_PER_USER | CPU_PER_SESSION | CPU_PER_CALL | CONNECT_TIME | IDLE_TIME | LOGICAL_READS_PER_SESSION | LOGICAL_READS_PER_CALL | COMPOSITE_LIMIT } { integer | UNLIMITED | DEFAULT }| PRIVATE_SGA { integer [ K | M ] | UNLIMITED | DEFAULT }}{{ FAILED_LOGIN_ATTEMPTS | PASSWORD_LIFE_TIME | PASSWORD_REUSE_TIME | PASSWORD_REUSE_MAX | PASSWORD_LOCK_TIME | PASSWORD_GRACE_TIME } { expr | UNLIMITED | DEFAULT }| PASSWORD_VERIFY_FUNCTION { function | NULL | DEFAULT }}四、语法解释: profile:配置文件的名称。
Oracle数据库以以下方式强迫资源限制: 1.如果用户超过了connect_time或idle_time的会话资源限制,数据库就回滚当前事务,并结束会话。
用户再次执行命令,数据库则返回一个错误, 2.如果用户试图执行超过其他的会话资源限制的操作,数据库放弃操作,回滚当前事务并立即返回错误。
用户之后可以提交或回滚当前事务,必须结束会话。
提示:可以将一条分成多个段,如1小时(1/24天)来限制时间,可以为用户指定资源限制,但是数据库只有在参数生效后才会执行限制。
Unlimited:分配该profile的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。
Default:指定为default意味着忽略对profile中的一些资源限制,Default profile初始定义对资源不限制,可以通过alter profile命令来改变。
Resource_parameter部分: Session_per_user:指定限制用户的并发会话的数目。
Cpu_per_session:指定会话的CPU时间限制,单位为百分之一秒。
Cpu_per_call:指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。
Connect_time:指定会话的总的连接时间,以分钟为单位。
Idle_time:指定会话允许连续不活动的总的时间,以分钟为单位,超过该时间,会话将断开。
但是长时间运行查询和其他操作的不受此限制。
Logical_reads_per_session:指定一个会话允许读的数据块的数目,包括从内存和磁盘读的所有数据块。
Logical_read_per_call:指定一次执行SQL(解析、执行和提取)调用所允许读的数据块的最大数目。
Private_sga:指定一个会话可以在共享池(SGA)中所允许分配的最大空间,以字节为单位。
(该限制只在使用共享服务器结构时才有效,会话在SGA中的私有空间包括私有的SQL和PL/SQL,但不包括共享的SQL和PL/SQL)。
Composite_limit:指定一个会话的总的资源消耗,以se...
mysql的my.ini问题。
请教高手
datadir="F:/Program Files/MySQL/MySQL Server 4.1/Data/"basedir="F:/Program Files/MySQL/MySQL Server 4.1/"这两个路径 搞正确 就差不多了可以看看下这个资料实在不行给我留言 http://blog.163.com/7454103/在本地计算机无法启动MYSQL服务错误1067进程意外终止 这种情况一般是my.ini文件配置出错了, 你可以删除系统目录下的my.ini文件, 把下面的内容重新写入my.ini文件试试, 要适当地改写一下文件路径 我的my.ini 2007年12月31日[WinMySQLAdmin]Server=C:/MYSQL/mysql/bin/mysqld-opt.exeuser=root[mysqld]basedir=C:/MYSQL/mysqldatadir=C:/MYSQL/mysql/data#bind-address=192.168.0.2#language=D:/MYSQL/share/chinese===========================================[WinMySQLAdmin] Server=D:/MYSQL/bin/mysqld-opt.exe user=root [mysqld] basedir=D:/MYSQL datadir=D:/MYSQL/data #bind-address=192.168.0.2 #language=D:/MYSQL/share/chinese ============================================查找Windows目录下的my.ini文件,编辑内容(如果没有该文件,则新建一个),至少包含basedir,datadir这两个基本的配置。
[mysqld]# set basedir to installation path, e.g., c:/mysql# 设置为MYSQL的安装目录basedir=D:/www/WebServer/MySQL# set datadir to location of data directory,# e.g., c:/mysql/data# 设置为MYSQL的数据目录datadir=D:/www/WebServer/MySQL/data 另外,要注意:[WinMySQLadmin]Server=D:/www/WebServer/MySQL/bin/mysqld-nt.exeuser=rootpassword=xxxxxxxx#以上是设置WinMySQLadmin的配置[Client]user=rootpassword=xxxxxxxx将Mysql添加到Windows系统服务中: 1.、 安装服务。
在Windows2000下,安装完成后,并没有把MySQL安装成服务,我们必须执行下面的语句把MySQL注册为服务:installdir\mysql\bin\mysqld-nt –-install。
Windows98下没有服务的概念,所以不用安装服务。
2.、 启动服务 在Windows2000下,安装服务后可以启动MySQL服务:net start mysql。
在Windows98下,可以用下面的命令启动服务:c:\mysql\bin\mysqld,服务启动后在后台运行,并没有界面。
3.、 停止服务 在Windows2000下,可以通过下面的命令停止MySQL服务:net stop mysql。
在Windows98下,可以通过下面命令停止服务:C:\> C:\mysql\bin\mysqladmin -u root shutdown
mysql 5.6 安装完毕没有 设置端口和设置账户的界面 直接就结束 怎么解...
更改 my.ini文件 这个是我的配置[client]port=3306[mysql]default-character-set=utf8# SERVER SECTION# ----------------------------------------------------------------------## The following options will be read by the MySQL Server. Make sure that# you have installed the server correctly (see above) so it reads this # file.#[mysqld]# The TCP/IP Port the MySQL Server will listen onport=3306#Path to installation directory. All paths are usually resolved relative to this.basedir="E:/wamp/mysql/"#Path to the database rootdatadir="E:/wamp/mysql/data/Data/"# The default character set that will be used when a new schema or table is# created and no character set is definedcharacter-set-server=utf8# The default storage engine that will be used when create new tables whendefault-storage-engine=INNODB# Set the SQL mode to strictsql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"# The maximum amount of concurrent sessions the MySQL server will# allow. One of these connections will be reserved for a user with# SUPER privileges to allow the administrator to login even if the# connection limit has been reached.max_connections=100# Query cache is used to cache SELECT results and later return them# without actual executing the same query once again. Having the query# cache enabled may result in significant speed improvements, if your# have a lot of identical queries and rarely changing tables. See the# "Qcache_lowmem_prunes" status variable to check if the current value# is high enough for your load.# Note: In case your tables change very often or if your queries are# textually different every time, the query cache may result in a# slowdown instead of a performance improvement.query_cache_size=0# The number of open tables for all threads. Increasing this value# increases the number of file descriptors that mysqld requires.# Therefore you have to make sure to set the amount of open files# allowed to at least 4096 in the variable "open-files-limit" in# section [mysqld_safe]table_cache=256# Maximum size for internal (in-memory) temporary tables. If a table# grows larger than this value, it is automatically converted to disk# based table This limitation is for a single table. There can be many# of them.tmp_table_size=34M# How many threads we should keep in a cache for reuse. When a client# disconnects, the client's threads are put in the cache if there aren't# more than thread_cache_size threads from before. This greatly reduces# the amount of thread creations needed if you have a lot of new# connections. (Normally this doesn't give a notable performance# improvement if you have a good thread implementation.)thread_cache_size=8#*** MyISAM Specific options# The maximum size of the temporary file MySQL is allowed to use while# recreating the index (during REPAIR, ALTER TABLE or LOAD DATA INFILE.# If the file-size would be bigger than this, the index will be created# through the key cache (which is slower).myisam_max_sort_file_size=100G# If the temporary file used for fast index creation would be bigger# than using the key cache by the amount specified here, then prefer the# key cache method. This is mainly used to force long character keys in# large tables to use the slower key cache method to create the index.myisam_sort_buffer_size=68M# Size of the Key Buffer, used to cache index blocks for MyISAM tables.# Do not set it larger than 30% of your available memory, as some memory# is also required by the OS to cache rows. Even if you're not using# MyISAM tables, you should still set it to 8-64M as it will also be# used for internal temporary disk tables.key_buffer_size=55M# Size of the buffer used for doing full table scans of MyISAM tables.# Allocated per thread, if a full scan is needed.read_buffer_size=64Kread_rnd_buffer_size=256K# This buffer is allocated when MySQL needs to rebuild the index in# REPAIR, OPTIMZE, ALTER table statements as well as in LOAD DATA INFILE# into an empty table. It is allocated per thread so be careful with# large settings.sort_buffer_size=256K#*** INNODB Specific options ***# Use this option if you have a MySQL server with InnoDB support enabled# but you do not plan to use it. This will save memory and disk space# and speed up some things.#skip-innodb# Additional memory pool that is used by InnoDB to store metadata# information. If InnoDB requires more memory for this purpose it will# start to allocate it from the OS. As this is fast enough on most# recent operating systems, you normally do not need to change this# value. SHOW INNODB STATUS will ...
数据库 如何利用手工方式创建一个选项组
前提条件:手工创建数据的前提是ORACLE数据库软件已经安装完毕。
1、首先需要设置oracle用户的环境变量,设置数据库的SID,oracle的根目录,oracle的产品目录,设置set -o vi 用来方便操作。
[oracle@secdb1 ~]$ pwd/home/oracle[oracle@secdb1 ~]$ vi .bash_profile# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then . ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/binexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/jdk/bin:$PATHexport ORACLE_SID=PRODset -o vi修改完成.bash_profile文件后,使用命令ZZ保存退出,使用下面的命令使环境变量生效,并进行验证。
验证的过程中一定要注意各环境变量准确无误,否则会对后面的安装产生影响[oracle@secdb1 ~]$ . ./.bash_profile[oracle@secdb1 ~]$ echo $ORACLE_SIDPROD[oracle@secdb1 ~]$ echo $ORACLE_BASE/u01/app/oracle[oracle@secdb1 ~]$ echo $ORACLE_HOME/u01/app/oracle/product/10.2.0/db_1在设置PATH的时候,需要注意在最后面加上$PATH,否则当你生效这些环境变量的时候,会导致ls vi等一些命令无法使用。
现象如下:[oracle@secdb1 ~]$ . ./.bash_profile[oracle@secdb1 ~]$ lsbash: ls: command not found解决方法:预先解决法:在生效环境变量前,预先打开两个窗口,在另一个为生效的窗口中修改环境变量,使之生效手工设置path方法,进入.bash_profile文件进行修改,使环境变量正确。
[oracle@secdb1 ~]$ export PATH=/usr/bin[oracle@secdb1 ~]$ vi .bash_profile2、创建目录,用来保存日志文件和数据文件,在出创建目录的时候,使用命令fa/r来进行字符的替换[oracle@secdb1 ~]$ cd $ORACLE_BASE[oracle@secdb1 oracle]$ mkdir -p admin/PROD/adump[oracle@secdb1 oracle]$ mkdir -p admin/PROD/bdump[oracle@secdb1 oracle]$ mkdir -p admin/PROD/cdump[oracle@secdb1 oracle]$ mkdir -p admin/PROD/udump[oracle@secdb1 oracle]$ mkdir -p oradata/PROD/disk1[oracle@secdb1 oracle]$ mkdir -p oradata/PROD/disk2[oracle@secdb1 oracle]$ mkdir -p oradata/PROD/disk3[oracle@secdb1 oracle]$ mkdir -p oradata/PROD/disk4[oracle@secdb1 oracle]$ mkdir -p oradata/PROD/disk53、生成密码文件,linux操作系统下口令文件的格式orapw$SID,如果不设置密码文件,在sys用户登录的时候,会提示ORA-01031: insufficient privileges[oracle@secdb1 oracle]$ cd $ORACLE_HOME/dbs[oracle@secdb1 dbs]$ orapwd file=orapwPROD password=oracle entries=30[oracle@secdb1 dbs]$ ls -lrt orapwPROD-rw-r----- 1 oracle oinstall 5120 Mar 4 21:49 orapwPROD4、根据init.ora文件生成pfile文件,去掉#开头和空行,修改db_name为数据库的SID,control_files为两个指定目录的文件,processes修改成200,添加sga_target和sga_max_szie为300M,注释db_block_buffers和shared_pool_size[oracle@secdb1 dbs]$ cat init.ora|grep -v ^#|grep -v ^$>initPROD.oraoracle@secdb1 dbs]$ vi initPROD.oradb_name=PRODdb_files = 80 # SMALL db_file_multiblock_read_count = 8 # SMALL #db_block_buffers = 100 # SMALL #shared_pool_size = 3500000 # SMALLlog_checkpoint_interval = 10000processes = 200 # SMALL parallel_max_servers = 5 # SMALLlog_buffer = 32768 # SMALLmax_dump_file_size = 10240 # limit trace file size to 5 Meg eachglobal_names = TRUEcontrol_files = (/u01/app/oracle/oradata/PROD/disk1/control01.ctl,/u01/app/oracle/oradata/PROD/disk2/control02.ctl)sga_max_size=300msga_target=300m5、生成spfile文件,在此过程中需要注意在nomount状态下才能修改参数[oracle@secdb1 dbs]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Tue Mar 4 22:05:31 2014Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to an idle instance.SQL> create spfile from pfile;File created.SQL> startup nomountORACLE instance started.Total System Global Area 314572800 bytesFixed Size 1219184 bytesVariable Size 96470416 bytesDatabase Buffers 213909504 bytesRedo Buffers 2973696 bytesSQL> alter system set undo_management=auto scope=spfile;System altered.SQL> show parameter destNAME TYPE VALUE------------------------------------ ----------- ------------------------------audit_file_dest string /u01/app/oracle/admin/PROD/adumpbackground_dump_dest string /u01/app/oracle/admin/PROD/bdumpcore_dump_dest string /u01/app/oracle/admin/PROD/cdumpSQL> shutdown immediateORA-01507: database not mountedORACLE instance shut down.SQL> startup nomountORACLE instance started.Total System Global Area 314572800 bytesFixed Size 1219184 bytesVariable Size 96470416 bytesDatabase Buffers 213909504 ...
转载请注明出处51数据库 » password_reuse_max
虞美人666666