1.用户登陆:
> sqlplus /nolog
SQL> conn(与connect一样) 用户名/密码@数据库名 as sysdba
2. 超级管理员登陆(不需要密码)
> sqlplus / as sysdba
3.普通用户登陆
sqlplus 用户名/密码@sid
4.数据库监听命令
> lsnrctl start/stop/status
5.数据库启动/关闭
> startup/shutdown
5.1数据库关闭几种关闭方式:
(1) shutdown normal 正常方式关闭数据库。
(2)shutdown immediate 立即方式关闭数据库(常用)。
(3)在SVRMGRL中执行shutdown immediate,数据库并不立即关闭, 而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源), 当使用shutdown不能关闭数据库时,shutdown immediate可以完成数据库关闭的操作。
(4) shutdown abort 直接关闭数据库,正在访问数据库的会话会被突然终止, 如果数据库中有大量操作正在执行,这时执行shutdown abort后,重新启动数据库需要很长时间。
1.查询数据库基本信息:
--查询oracle版本
select * from v$version;
select userenv('language') from dual
--查询oracle编码
select * from v$nls_parameters;
2.数据库常识:
1)oracle 数据表里为空的字段,默认是有空格,即‘ ’
3.OPEN_CURSORS 指定一个会话一次最多可以拥有的游标数
--查看
show parameter open_cursors;
--修改
alter system set open_cursors=1000; (0~65535)
3.修改数据库最大连接数:
--当前的连接数
select count(*) from v$process
--允许最大连接数
show parameter processes;
--修改:
alter system set processes = 600 scope = spfile;
--当前的连接数
select count(*) from v$session;
--允许最大连接数
show parameter sessions;
--修改:
alter system set sessions=600 scope=spfile;
以上生效需要重启数据库:
1) shutdown immediate;
2) startup;
3.修改数据库密码配置信息:
说明:oracle数据库密码默认有效期为180天;可通过修改密码有效期,或定期修改数据库密码来处理该问题。
常见错误:ORA-28001: the password has expired
常用命令:
--查看用户密码默认管理方式
SQL> select profile from dba_users where username='ZXX';
--查看数据库默认的密码管理方式有效期
SQL> SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
--修改用户密码并设置数据库默认密码为永久有效
SQL> alter user zxx identified by zxx;
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED ;
--验证修改是否成功
sqlplus zxx/zxx@orcl 登录正常
4.百万级数据表查询,order by影响效率解决:
1、以dba方式登陆数据库,由于我创建了多个数据库,登陆时需要指定具体数据库
sqlplus 账号/密码@localhost:1521/数据库名
2、查看sort_area_size
show parameter sort_area_size;
sort_area_size默认为65536;
3、查看workarea_size_policy
show parameter workarea_size_policy;
workarea_size_policy默认为auto,即自动分配。如需修改sort_area_size,需要同时将workarea_size_policy设置为MANUAL,否则sort_area_size不起作用。
4、修改sort_area_size
alter system set sort_area_size=65535000 scope=spfile;
5、修改workarea_size_policy
alter system set workarea_size_policy=MANUAL scope=spfile;
修改完成后,需要重启数据库服务器,修改才能生效。
示例: