Oracle 19c 中启用 scott 用户

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 用户及其数据。

相关推荐
百度智能云技术站2 小时前
广告投放系统成本降低 70%+,基于 Redis 容量型数据库 PegaDB 的方案设计和业务实践
数据库·redis·oracle
梦想平凡4 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
夏木~6 小时前
Oracle 中什么情况下 可以使用 EXISTS 替代 IN 提高查询效率
数据库·oracle
吴冰_hogan7 小时前
MySQL InnoDB 存储引擎 Redo Log(重做日志)详解
数据库·oracle
CodeCraft Studio7 小时前
【实用技能】如何在 SQL Server 中处理 Null 或空值?
数据库·oracle·sqlserver
武汉联从信息7 小时前
浅谈ORACLE中间件SOA BPM,IDM,OID,UCM,WebcenterPortal服务器如何做迁移切换
oracle
Elastic 中国社区官方博客8 小时前
Elasticsearch:什么是查询语言?
大数据·数据库·elasticsearch·搜索引擎·oracle
夜光小兔纸9 小时前
oracle dblink 的创建及使用
数据库·oracle
Smile丶凉轩10 小时前
MySQL库的操作
数据库·mysql·oracle
p@nd@11 小时前
Oracle筑基篇-调度算法-LRU的引入
数据库·oracle·操作系统·lru