sqlplus使用、创建实例、监听 【安装好oracle后的操作】

安装好oracle后的操作

一、校验oracle是否安装好

安装好oracle后就可以 黑窗口用sqlplus 连接 oracle

Win+R cmd

输入下面命令 sqlplus连接本地oracle数据库是不要密码的

sqlplus / as sysdba

 

创建好实例后建议带实例登录(不带实例应该会默认实例)

sqlplus runhe/[email protected] as sysdba 

@后跟实例名

二、oracle创建实例

实例创建好后默认会创建一个表空间(表空间名字为 实例名的大写 例如:实例名runhe 表空间名:RUNHE),所以就不用再创建表空间

查看实例名

SQL> select instance_name from v$instance;

SQL> desc v$instance;

查看数据库

SQL> select name from v$database;

SQL> desc v$database;

开始 –》》

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

 

按图操作

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

输入“全局数据库名“和”SID“,SID即数据库实例名,如db001,全局数据库名格式通常为name.domain,name一般与SID相同(输入全局数据库名的时候,SID会自动填充,填充的值也就是name),domain可以为空,所以,全局数据库名可以和SID相同,如,都为db001,点击下一步

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

 

 

6到10步 默认配置 选下一步

第11步

字符集选择Unicode AL32UTF8

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

 

点完成后可能会报错

安装时会警告,如下图,原因是监听程序未启动,可以先不用管,后面再配置,点击确定

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

 

配置口令,默认SCOTT用户是锁定的,我们可以将其解锁,然后点击“确定”,最后点击“退出”,至此,数据库实例创建完成。

三、下面是配置服务和监听程序

(开始,应用程序中的 "Oracle 11g" -> "配置和移植工具" ->"Net Manager")

配置服务

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

配置服务

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

配置监听程序

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

Win+R services.msc

重启监听 右键重启

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

四、添加用户(随着用户的创建,自动产生与用户同名的schema)

1.添加用户

方式一:

先用sys账户带实例登录

sqlplus /@runhe as sysdba

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

第一步是建立用户:
create user abc identified by abc123;----建立个名为abc的用户建立密码为abc123;用户abc已经建立,可以查询用户了。但是没有权限。就是没有使用权,只是有个ABC用户而已。
第二步是给建立的用户授权:
grant connect ,resource,dba to abc; -------给ABC用户授权,访问权,DBA最高权限;

例如:

create user runhe identified by runhe123;

grant connect ,resource,dba to runhe;

方式二:指定表空间

CREATE USER "TESTER" PROFILE "DEFAULT" IDENTIFIED BY "TESTER" DEFAULT TABLESPACE "TESTDATA" TEMPORARY TABLESPACE "TESTTEMP" ACCOUNT UNLOCK;

 

登录测试

sqlplus runhe/[email protected] as sysdba

2、赋权

GRANT "CONNECT" TO "TESTER";

GRANT "RESOURCE" TO "TESTER";

GRANT "DBA" TO "TESTER";

GRANT "EXP_FULL_DATABASE" TO "TESTER";

GRANT "IMP_FULL_DATABASE" TO "TESTER";

3、删除用户:例如创建了一个用户 A,要删除它可以这样做

connect sys/密码 as sysdba;

drop user A cascade;//就这样用户就被删除了

用户修改密码,解锁

ALTER USER "SCOTT" IDENTIFIED BY "*******"

ALTER USER "SCOTT" ACCOUNT UNLOCK

1.查看所有用户:

select * from dba_user;

select * from all_users;

select * from user_users;

2.查看用户系统权限:

select * from dba_sys_privs;

select * from all_sys_privs;

select * from user_sys_privs;

3.查看用户对象权限:

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

4.查看所有角色:

select * from dba_roles;

5.查看用户所拥有的角色:

select * from dba_role_privs;

select * from user_role_privs;

Oracle中新建用户名

4、修改用户名称、密码

一、修改用户名称

数据库连接成功后,在SQL>提示后面继续输入:

首先查到到所需修改用户名称的用户需要:select user#,name from user$;(回车)--如:user#等于66

现在就可以修改用户名称了:update user$ set name='新的用户名称' where user#=66;(回车)

系统会提示:1 row updated.说明修改成功,

再输入:commit;(回车)提交所作修改。

 

二、修改用户密码。

select username from dba_users;

alter user 用户名 identified by 新密码;

 

数据库连接成功后,在SQL>提示后输入:ALTER USER 用户名 IDENTIFIED BY 新密码;(回车)

再输入:commit;(回车)提交所作修改即可。

三、锁定用户。

数据库连接成功后,在SQL>后输入:alter user 用户名 account lock;

四、解锁用户。

数据库连接成功后,在SQL后输入:alter user 用户名称 account unlock;

五、连接ORACLE数据库:

1.Sqlplus本地连接

sqlplus runhe/[email protected] as sysdba

2.sqlplus 远程连接待验证

网上资料会展示在下面 但我没试验成功

方式一:简易连接,不用进行网络配置,其实就是tnsname.ora文件,但只支持oracle10G以上。
命令:sqlplus 用户名/密码@ip地址[:端口]/service_name [as sysdba]

示例:sqlplus sys/[email protected]:1521/test
示例:sqlplus sys/[email protected]:1521/test as sysdba 
备注:使用默认1521端口时可省略输入

方式二:进行网络配置 oracle9i和以前的版本
2.1图形化操作:Net Configuration Assistant--> 本地Net服务名配置-->添加->服务名->协议(选tcp)->主机名称->端口->完成。

2.2文本化操作:编辑$ORACLE_HOME/NETWORK/ADMIN/tnsnames.ora文件
test =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ip或主机名称)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = 数据库的服务名称)
    )
  )

 

六、用户及授权介绍

一般来说,创建一个数据库实例后,会默认有两个用户:system和sys,这两个用户的区别如下:

sys:拥有dba、sysdba、sysoper(系统操作员 )角色或权限,是权限最高的用户,只能以sysdba或sysoper登录,不能以normal形式登录(登录Oracle数据库有三种形式,分别是sysdba、sysoper及normal)。

 

System:拥有dba、sysdba权限或角色,可以以普通用户的身份登录。

【sysdba、sysoper、DBA区别】

Sysdba用户:可以改变字符集、创建删除数据库、登录之后用户是SYS(可以启动和关闭数据库)

Sysoper用户:不可改变字符集、不能创、删数据库、登陆之后用户是PUBLIC(可以启动和关闭数据库)

DBA用户:只有在启动数据库后才能执行各种管理工作。

Sysdba> Sysoper>普通的DBA

 

这里我们用system用户(scott用户权限不足,不能创建其它用户)登录数据库,使用PLSQL Developer工具登录数据库的连接串为:

 

system/[email protected]:1521/db001

 

登录后,通过以下命令创建新的数据库用户:

 

create user db001data identified by 123456;  

 

再通过以下命令授权:

 

grant create session to db001data;  

grant create table to db001data;  

grant create tablespace to  db001data;  

grant create view to  db001data;

 

此时,可以用db001data用户登录数据库,连接串为db001data/[email protected]:1521/db001

 

但db001data用户创建表插入数据时,会提示错误:no privileges on tablespace 'USERS',解决方法:

 

用system用户登录,然后给db001data用户分配表空间:

 

alter user db001data quota unlimited on users;

 

 

GRANT UNLIMITED TABLESPACE TO db001data;

 

 

alter user db001data quota 4M on users;

七、sqlplus打印日志乱码解决

Cmd执行

chcp 936

963 新宋体

八、修改监听文件

D:\app\Administrator\product\11.2.0\dbhome_2\NETWORK\ADMIN\ tnsnames.ora

sqlplus使用、创建实例、监听 【安装好oracle后的操作】

 

 

D:\app\Administrator\product\11.2.0\dbhome_2\NETWORK\ADMIN\ listener.ora

sqlplus使用、创建实例、监听 【安装好oracle后的操作】