oracle11g数据库常用操作实例总结

Fawn ·
更新时间:2024-09-20
· 129 次阅读

一、创建用户库 1.进入Oracle数据库

命令:su - oracle

命令:sqlplus / as sysdba

【进入Oracle数据库后可以操作的常用命令】:

关闭数据库:shutdown immediate

启动数据库:startup

启动监听:lsnrctl  start

停止监听:lsnrctl stop

2.创建表空间

SQL:create tablespace MyDataBase datafile '/u01/app/oracle/oradata/MyDataBase.dbf' size 300m autoextend on;

【说明】:

create tablespace:创建表空间关键字

MyDataBase:数据库名称(表名称)

datafile '/u01/app/oracle/oradata/MyDataBase.dbf':指定数据库文件目录

size 300m:设置表空间初始大小

autoextend on:参数表示当表空间大小不够用时会自动扩容,所有建议加上autoextend on参数。

3.创建用户并赋予表空间权限

create user username identified by "passwd" default tablespace MyDataBase;

【说明】:

create user:oracle创建用户关键词

username:用户名

identified by:指定密码关键词

passwd:自定义密码 

default tablespace:数据库映射关键词

MyDataBase:映射的数据库名称

4.授予用户管理权限 grant connect,resource,dba to username; grant create session to username;

【说明】:

grant connect,resource,dba to:将连接数据权限,授权给指定用户

grant create session to :将创建会话权限,授权给指定用户

username:用户名

5.想让B用户对A用户库进行操作,那就授权给B用户(不强制执行) grant all privileges to Buser;

【说明】:

grant :授权关键字

all:全部权限

privileges to:指定授权人关键字

Buser:授权人用户名

6.退出数据库

命令:exit;

二、oracle(11g) 数据库设置ID自增功能(一共两个步骤): 1.给要实现ID自增的数据表创建一个序列

SQL> CREATE SEQUENCE "序列名称"

increment by 1    ----- 每次递增:1  

start with 1       ----- 从哪开始:1 

nomaxvalue      ----- 递增最大值:没有 

minvalue 1       ----- 递增最小值:1  

NOCYCLE;      ----- 不循环  

2.给要实现ID自增的数据表创建一个触发器

SQL> CREATE OR REPLACE TRIGGER "触发器名称"

BEFORE INSERT ON "要实现ID自增的数据表名称"

FOR EACH ROW  

BEGIN  

SELECT "之前创建的序列名称".nextval INTO :new."要实现ID自增数据表中的ID字段名"  FROM dual;  

END;  

这2个SQL执行完成后,您的数据表就可以实现ID自增的效果了。

三、遇到oracle(11g) 数据表被上锁,无法正常更新表数据怎么处理? 1.用sql命令行查询目前所有被锁的表: select b.owner TABLEOWNER,b.object_name TABLENAME,c.OSUSER LOCKBY,c.USERNAME LOGINID, c.sid SID, c.SERIAL# SERIAL from v$locked_object a,dba_objects b,v$session c where b.object_id = a.object_id AND a.SESSION_ID =c.sid; 2.通过sql命令解锁指定进程: alter system kill session 'SID,SERIAL' immediate; 

解锁被锁数据表后,数据表可恢复正常更新。

四、遇到oracle(11g) 表中数据查询后发现中文字符乱码怎么转义? <?php //变量字符类型检测; $fileType = mb_detect_encoding($appPath , array('UTF-8','GBK','LATIN1','BIG5')); //变量强行转换utf-8 $appPath = mb_convert_encoding($appPath ,'utf-8' , $fileType); ?> 附:oracle 11g相关软件下载:

 oracle11g数据库管理工具 64位:https://www.jb51.net/softs/443979.html

oracle官网 https://www.oracle.com/index.html

本地下载:https://www.jb51.net/softs/443977.html



Oracle

需要 登录 后方可回复, 如果你还没有账号请 注册新账号