安装好oracle后的操作
安装好oracle后就可以 黑窗口用sqlplus 连接 oracle
Win+R cmd
输入下面命令 sqlplus连接本地oracle数据库是不要密码的
sqlplus / as sysdba
创建好实例后建议带实例登录(不带实例应该会默认实例)
sqlplus runhe/runhe123@runhe as sysdba
@后跟实例名
实例创建好后默认会创建一个表空间(表空间名字为 实例名的大写 例如:实例名runhe 表空间名:RUNHE),所以就不用再创建表空间
查看实例名
SQL> select instance_name from v$instance;
SQL> desc v$instance;
查看数据库名
SQL> select name from v$database;
SQL> desc v$database;
开始 –》》
按图操作
输入“全局数据库名“和”SID“,SID即数据库实例名,如db001,全局数据库名格式通常为name.domain,name一般与SID相同(输入全局数据库名的时候,SID会自动填充,填充的值也就是name),domain可以为空,所以,全局数据库名可以和SID相同,如,都为db001,点击下一步
6到10步 默认配置 选下一步
第11步
字符集选择Unicode AL32UTF8
点完成后可能会报错
安装时会警告,如下图,原因是监听程序未启动,可以先不用管,后面再配置,点击确定
配置口令,默认SCOTT用户是锁定的,我们可以将其解锁,然后点击“确定”,最后点击“退出”,至此,数据库实例创建完成。
(开始,应用程序中的 "Oracle 11g" -> "配置和移植工具" ->"Net Manager")
配置服务
配置服务
配置监听程序
Win+R services.msc
重启监听 右键重启
方式一:
先用sys账户带实例登录
sqlplus /@runhe as sysdba
第一步是建立用户:
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/runhe123@runhe as sysdba
GRANT "CONNECT" TO "TESTER";
GRANT "RESOURCE" TO "TESTER";
GRANT "DBA" TO "TESTER";
GRANT "EXP_FULL_DATABASE" TO "TESTER";
GRANT "IMP_FULL_DATABASE" TO "TESTER";
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中新建用户名
一、修改用户名称
数据库连接成功后,在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;
sqlplus runhe/runhe123@runhe as sysdba
网上资料会展示在下面 但我没试验成功
方式一:简易连接,不用进行网络配置,其实就是tnsname.ora文件,但只支持oracle10G以上。
命令:sqlplus 用户名/密码@ip地址[:端口]/service_name [as sysdba]
示例:sqlplus sys/pwd@ip:1521/test
示例:sqlplus sys/pwd@ip: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/123456@localhost: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/123456@localhost: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;
Cmd执行
chcp 936
963 新宋体
D:\app\Administrator\product\11.2.0\dbhome_2\NETWORK\ADMIN\ tnsnames.ora
D:\app\Administrator\product\11.2.0\dbhome_2\NETWORK\ADMIN\ listener.ora