Oracle数据库配置
一:修改Oracle数据库内存
查看当前内存配置 show parameter memory,万一配置错了起不来,只能通过pfile文件重新启动
修改memory_target
MEMORY_TARGET:oracle所能使用的最大内存,该参数可以动态调整
MEMORY_MAX_TARGET:MEMORY_TARGET参数所能动态设定的最大值,不能动态调整,需要重启数据库
SQL>alter system set memory_max_target=2048M scope=spfile;
SQL> alter system set memory_target =2048M scope=spfile;
重启数据库后生效
shutdown immediate;
startup
show parameter memory
二:连接数/会话
oracle限制某个用户的连接数
1. 查看resource_limit参数:
SQL> show parameter resource_limit
设置 RESOURCE_LIMIT参数为TRUE,开启资源限制:
alter system set resource_limit =TRUE;
该改变对密码资源无效,密码资源总是可用的
2. 创建PROFILE :
SQL>create profile sessnum limit sessions_per_user 20; --最大连接数限制为20
3. 将PROFILE指定给用户:
SQL>alter user test profile sessnum;
另外,SESSIONS_PER_USER不会像10g和11g那样限制12C中的并行从进程。
drop profile sessnum cascade;
当某个profile被删除时,如果这个profile已经被分配给某个用户,那么我们在删除的时候要加上cascade,并且已经被分配的用户的profile会被自己修改成default profile。
当前进程的连接数
select count(*) from v$process;
当前会话的连接数
select count(*) from v$session;
查看数据库的并发连接数
select count(*) from v$session where status='ACTIVE';
查询数据库允许的最大连接数
select value from v$parameter where name = 'processes';
修改数据库允许的最大连接数:
alter system set processes = 300 scope = spfile;
(需要重启数据库才能实现连接数的修改)
查看当前数据库建立的会话情况
select count(1),username from v$session group by username
结束/杀掉会话
SELECT SID, SERIAL# FROM V$SESSION WHERE USERNAME = 'ETC';
ALTER SYSTEM KILL SESSION '13,772';
字符集
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
AMERICAN_AMERICA.ZHS16GBK
注意:以上两种字符集是一样的
select * fromnls_database_parameters(服务端字符)
select * fromnls_session_parameters(客户端字符)
查询语句:select userenv('language') from dual;(客户端字符)
查询结果:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
学习网址: https://zhuanlan.zhihu.com/p/532100964?utm_id=0