Oracle 19c 中启用 scott 用户
文章目录
- [Oracle 19c 中启用 scott 用户](#Oracle 19c 中启用 scott 用户)
- 正常操作
- [如果ORA-01918: 用户 'SCOTT' 不存在](#如果ORA-01918: 用户 'SCOTT' 不存在)
- [@?/sqlplus/admin/scott.sql 没有 scott.sql 怎么处理](#@?/sqlplus/admin/scott.sql 没有 scott.sql 怎么处理)
正常操作
连接到 Oracle 数据库: 使用 sqlplus 工具或者其他 SQL 客户端工具(如 SQL Developer)以管理员身份(如 sysdba)连接到数据库。
sql
sqlplus / as sysdba
解锁 scott 用户: Oracle 默认将 scott 用户锁定,您可以使用以下命令来解锁它:
sql
ALTER USER scott ACCOUNT UNLOCK;
重置密码(可选): Oracle 默认会给 scott 用户设置一个密码,您可以通过以下命令来重置密码:
sql
ALTER USER scott IDENTIFIED BY tiger;
这里将密码设置为 tiger,您可以将其更改为任何您想要的密码。
授予权限(可选): 如果 scott 用户没有足够的权限,您可以授予它一些权限。一般情况下,CONNECT 和 RESOURCE 权限就足够了:
sql
GRANT CONNECT, RESOURCE TO scott;
连接到 scott 用户: 完成以上步骤后,您可以使用 scott 用户名和密码(例如 tiger)连接到数据库。
sql
sqlplus scott/tiger@数据库服务名
这样,scott 用户就可以正常使用了。
如果ORA-01918: 用户 'SCOTT' 不存在
果您在尝试启用 scott 用户时遇到 ORA-01918: 用户 'SCOTT' 不存在 错误,可能是因为该用户没有被创建或被删除。您可以按照以下步骤进行处理:
确认用户是否存在: 先检查 scott 用户是否在数据库中存在。可以使用以下查询来检查:
sql
SELECT username FROM all_users WHERE username = 'SCOTT';
创建 scott 用户: 如果没有找到该用户,您可以通过运行以下脚本来创建 scott 用户及其表:
sql
@?/sqlplus/admin/scott.sql
这条命令会执行 scott 用户的创建脚本,默认会在 Oracle 的安装目录中。
解锁并设置密码: 创建用户后,按照之前的步骤解锁 scott 用户并设置密码:
sql
ALTER USER scott ACCOUNT UNLOCK;
ALTER USER scott IDENTIFIED BY tiger;
连接到 scott 用户: 一旦用户被创建并解锁,您就可以连接到 scott 用户:
sql
sqlplus scott/tiger@数据库服务名
确保您具有适当的权限来执行这些操作。
@?/sqlplus/admin/scott.sql 没有 scott.sql 怎么处理
如果在 Oracle 19c 中没有找到 scott.sql 文件,您可以手动创建 scott 用户并导入 scott 模式的数据。请按照以下步骤操作:
创建 scott 用户:
sql
CREATE USER scott IDENTIFIED BY tiger;
授予权限:
sql
GRANT CONNECT, RESOURCE TO scott;
解锁用户:
sql
ALTER USER scott ACCOUNT UNLOCK;
创建 scott 模式的数据表: 如果您希望手动创建 scott 模式中的表,可以通过以下 SQL 脚本来创建常见的 scott 表:
sql
CREATE TABLE emp (
empno NUMBER(4) PRIMARY KEY,
ename VARCHAR2(10),
job VARCHAR2(9),
mgr NUMBER(4),
hiredate DATE,
sal NUMBER(7,2),
comm NUMBER(7,2),
deptno NUMBER(2)
);
CREATE TABLE dept (
deptno NUMBER(2) PRIMARY KEY,
dname VARCHAR2(14),
loc VARCHAR2(13)
);
-- 其他您需要的表可以在这里继续创建
插入示例数据: 您可以根据需要插入示例数据,以下是一些示例数据的插入语句:
sql
INSERT INTO dept (deptno, dname, loc) VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO dept (deptno, dname, loc) VALUES (20, 'RESEARCH', 'DALLAS');
INSERT INTO dept (deptno, dname, loc) VALUES (30, 'SALES', 'CHICAGO');
INSERT INTO dept (deptno, dname, loc) VALUES (40, 'OPERATIONS', 'BOSTON');
INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno) VALUES (7369, 'SMITH', 'CLERK', 7902, TO_DATE('1980-12-17', 'YYYY-MM-DD'), 800, NULL, 20);
-- 其他示例数据的插入
完成这些步骤后,您将能够使用 scott 用户及其数据。