Oracleの管理者ユーザーSYSとSYSTEMの違い【as sysdbaの有無によって、ログインできる/ログインできないが変わる】
オラクルに「SYSでログインできない」「SYSTEMでログインできない」とハマってしまったことがありませんか? 同じようなオラクル管理者ユーザーでありながら、権限やログインのしかたの違いをきちんと知りたい、と考えていませんか?
あと、オラクルデータベースについてのおススメの勉強法があれば知りたい、と考えていませんか?
SYSユーザの方がより強い権限を持ち、as sysdbaをつけてログインする。
というのがポイントです。
本記事では、下記の内容を解説します。
この記事を書いている私は、某SIerに勤務しながら、入社当時から10年以上、オラクルデータベースを使ったシステムの開発に関わっていますので、記事の信頼性担保に繋がると思います。
- Oracleの管理者ユーザーSYSとSYSTEMの違い【as sysdbaの有無によって、ログインできる/ログインできないが変わる】
- オラクルデータベースのおススメの勉強法の紹介
- Oracleの管理者ユーザーSYSとSYSTEMの違いまとめ
SYSユーザーとSYSTEMユーザーの違い
データディクショナリの「DBA_SYS_PRIVS」「DBA_ROLE_PRIVS」で、
それぞれのユーザーに付与されているシステム権限を確認してみます。
SYSユーザーの権限を DBA_SYS_PRIVS で確認
SQL> select grantee, privilege from dba_sys_privs where grantee='SYS'; GRANTEE PRIVILEGE -------- ---------------------------------------- SYS CREATE ANALYTIC VIEW SYS ALTER ANY CUBE BUILD PROCESS SYS CREATE LOCKDOWN PROFILE SYS INHERIT ANY PRIVILEGES SYS EM EXPRESS CONNECT SYS DROP ANY SQL TRANSLATION PROFILE SYS UPDATE ANY CUBE DIMENSION SYS DELETE ANY CUBE DIMENSION SYS SELECT ANY MINING MODEL SYS ALTER ANY ASSEMBLY SYS MANAGE FILE GROUP GRANTEE PRIVILEGE -------- ---------------------------------------- SYS EXECUTE ANY RULE SYS GRANT ANY OBJECT PRIVILEGE SYS DEBUG CONNECT ANY SYS CREATE ANY CONTEXT SYS CREATE DIMENSION SYS UNDER ANY TABLE SYS GLOBAL QUERY REWRITE SYS QUERY REWRITE SYS DROP ANY INDEXTYPE SYS ALTER ANY OPERATOR SYS ALTER ANY LIBRARY GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DROP ANY TYPE SYS DROP ANY DIRECTORY SYS DROP ANY TRIGGER SYS AUDIT ANY SYS DROP PUBLIC SYNONYM SYS DROP ANY SYNONYM SYS CREATE ANY TABLE SYS CREATE TABLE SYS ALTER USER SYS CREATE TABLESPACE SYS ALTER SYSTEM GRANTEE PRIVILEGE -------- ---------------------------------------- SYS CREATE HIERARCHY SYS ALTER ANY ATTRIBUTE DIMENSION SYS ALTER ANY SQL TRANSLATION PROFILE SYS CREATE CUBE BUILD PROCESS SYS CREATE MEASURE FOLDER SYS DROP ANY CUBE SYS CREATE ANY MINING MODEL SYS DROP ANY ASSEMBLY SYS SELECT ANY TRANSACTION SYS CREATE JOB SYS DEBUG ANY PROCEDURE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DROP ANY CONTEXT SYS DROP ANY DIMENSION SYS DROP ANY LIBRARY SYS CREATE ANY MATERIALIZED VIEW SYS GRANT ANY PRIVILEGE SYS ALTER PROFILE SYS CREATE PROFILE SYS CREATE PUBLIC DATABASE LINK SYS CREATE DATABASE LINK SYS ALTER ANY SEQUENCE SYS DROP ANY VIEW GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DROP ANY INDEX SYS DELETE ANY TABLE SYS LOCK ANY TABLE SYS ALTER ROLLBACK SEGMENT SYS CREATE USER SYS ALTER SESSION SYS DROP ANY ANALYTIC VIEW SYS CREATE ANY ANALYTIC VIEW SYS DROP ANY HIERARCHY SYS CREATE ATTRIBUTE DIMENSION SYS ALTER ANY MEASURE FOLDER GRANTEE PRIVILEGE -------- ---------------------------------------- SYS LOGMINING SYS CREATE ANY CREDENTIAL SYS INSERT ANY MEASURE FOLDER SYS DROP ANY MEASURE FOLDER SYS CREATE ANY CUBE SYS DROP ANY EDITION SYS MANAGE ANY FILE GROUP SYS MANAGE SCHEDULER SYS EXECUTE ANY CLASS SYS EXPORT FULL DATABASE SYS CREATE ANY RULE SET GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DROP ANY EVALUATION CONTEXT SYS CREATE ANY EVALUATION CONTEXT SYS CREATE EVALUATION CONTEXT SYS DEQUEUE ANY QUEUE SYS ENQUEUE ANY QUEUE SYS CREATE TYPE SYS CREATE ANY DIRECTORY SYS ALTER RESOURCE COST SYS DROP PROFILE SYS CREATE ANY PROCEDURE SYS DROP ANY ROLE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS SELECT ANY SEQUENCE SYS CREATE ANY SYNONYM SYS UPDATE ANY TABLE SYS BECOME USER SYS DROP ANY ATTRIBUTE DIMENSION SYS SELECT ANY CUBE BUILD PROCESS SYS CREATE PLUGGABLE DATABASE SYS SELECT ANY CUBE DIMENSION SYS DROP ANY MINING MODEL SYS READ ANY FILE GROUP SYS CREATE ANY SQL PROFILE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS ADMINISTER SQL TUNING SET SYS DROP ANY SQL PROFILE SYS EXECUTE ANY PROGRAM SYS ADVISOR SYS CREATE RULE SYS ALTER ANY DIMENSION SYS ALTER ANY INDEXTYPE SYS CREATE OPERATOR SYS EXECUTE ANY LIBRARY SYS CREATE ANY LIBRARY SYS CREATE LIBRARY GRANTEE PRIVILEGE -------- ---------------------------------------- SYS ALTER ANY TYPE SYS ALTER ANY MATERIALIZED VIEW SYS EXECUTE ANY PROCEDURE SYS CREATE VIEW SYS CREATE PUBLIC SYNONYM SYS INSERT ANY TABLE SYS RESTRICTED SESSION SYS CREATE ANY HIERARCHY SYS CREATE ANY ATTRIBUTE DIMENSION SYS USE ANY JOB RESOURCE SYS INSERT ANY CUBE DIMENSION GRANTEE PRIVILEGE -------- ---------------------------------------- SYS COMMENT ANY MINING MODEL SYS CREATE ANY ASSEMBLY SYS ALTER ANY EDITION SYS DROP ANY RULE SET SYS ALTER ANY EVALUATION CONTEXT SYS FLASHBACK ANY TABLE SYS ADMINISTER RESOURCE MANAGER SYS CREATE INDEXTYPE SYS DROP ANY OPERATOR SYS FORCE TRANSACTION SYS ALTER DATABASE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS CREATE ROLE SYS CREATE ANY SEQUENCE SYS ALTER ANY INDEX SYS CREATE CLUSTER SYS SELECT ANY TABLE SYS COMMENT ANY TABLE SYS BACKUP ANY TABLE SYS ALTER ANY TABLE SYS DROP USER SYS ALTER TABLESPACE SYS AUDIT SYSTEM GRANTEE PRIVILEGE -------- ---------------------------------------- SYS READ ANY TABLE SYS CREATE CREDENTIAL SYS USE ANY SQL TRANSLATION PROFILE SYS CREATE SQL TRANSLATION PROFILE SYS ADMINISTER SQL MANAGEMENT OBJECT SYS UPDATE ANY CUBE BUILD PROCESS SYS CREATE CUBE SYS EXECUTE ASSEMBLY SYS ALTER ANY SQL PROFILE SYS ALTER ANY RULE SYS RESUMABLE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS ADMINISTER DATABASE TRIGGER SYS CREATE ANY OUTLINE SYS MANAGE ANY QUEUE SYS CREATE ANY DIMENSION SYS EXECUTE ANY OPERATOR SYS CREATE ANY OPERATOR SYS ALTER ANY TRIGGER SYS ALTER ANY PROCEDURE SYS CREATE PROCEDURE SYS ALTER ANY ROLE SYS DROP ANY SEQUENCE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS CREATE ANY VIEW SYS ALTER ANY CLUSTER SYS UNLIMITED TABLESPACE SYS CREATE SESSION SYS ALTER ANY ANALYTIC VIEW SYS SELECT ANY MEASURE FOLDER SYS ALTER LOCKDOWN PROFILE SYS CREATE ANY SQL TRANSLATION PROFILE SYS DROP ANY CUBE BUILD PROCESS SYS CREATE ANY MEASURE FOLDER SYS UPDATE ANY CUBE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS SELECT ANY CUBE SYS ALTER ANY CUBE SYS ALTER ANY CUBE DIMENSION SYS ALTER ANY MINING MODEL SYS EXECUTE ANY ASSEMBLY SYS CREATE ANY EDITION SYS CREATE ANY JOB SYS DROP ANY RULE SYS IMPORT FULL DATABASE SYS EXECUTE ANY RULE SET SYS CREATE RULE SET GRANTEE PRIVILEGE -------- ---------------------------------------- SYS ON COMMIT REFRESH SYS MERGE ANY VIEW SYS ALTER ANY OUTLINE SYS EXECUTE ANY INDEXTYPE SYS UNDER ANY TYPE SYS DROP ANY MATERIALIZED VIEW SYS CREATE MATERIALIZED VIEW SYS ANALYZE ANY SYS CREATE ANY TRIGGER SYS FORCE ANY TRANSACTION SYS GRANT ANY ROLE GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DROP PUBLIC DATABASE LINK SYS CREATE SEQUENCE SYS CREATE ANY INDEX SYS CREATE ANY CLUSTER SYS CREATE ROLLBACK SEGMENT SYS DROP TABLESPACE SYS ALTER ANY HIERARCHY SYS DROP LOCKDOWN PROFILE SYS SET CONTAINER SYS FLASHBACK ARCHIVE ADMINISTER SYS CREATE ANY CUBE BUILD PROCESS GRANTEE PRIVILEGE -------- ---------------------------------------- SYS DELETE ANY MEASURE FOLDER SYS DROP ANY CUBE DIMENSION SYS CREATE ANY CUBE DIMENSION SYS CREATE CUBE DIMENSION SYS CREATE MINING MODEL SYS CREATE ASSEMBLY SYS CREATE EXTERNAL JOB SYS CHANGE NOTIFICATION SYS ADMINISTER ANY SQL TUNING SET SYS CREATE ANY RULE SYS ALTER ANY RULE SET GRANTEE PRIVILEGE -------- ---------------------------------------- SYS EXECUTE ANY EVALUATION CONTEXT SYS DEBUG CONNECT SESSION SYS DROP ANY OUTLINE SYS UNDER ANY VIEW SYS CREATE ANY INDEXTYPE SYS EXECUTE ANY TYPE SYS CREATE ANY TYPE SYS CREATE TRIGGER SYS DROP ANY PROCEDURE SYS CREATE SYNONYM SYS DROP ANY CLUSTER GRANTEE PRIVILEGE -------- ---------------------------------------- SYS REDEFINE ANY TABLE SYS DROP ANY TABLE SYS DROP ROLLBACK SEGMENT SYS MANAGE TABLESPACE 235行が選択されました。
SYSユーザーのロールをDBA_ROLE_PRIVS で確認
SQL> select grantee, granted_role from dba_role_privs where grantee='SYS'; GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS AUDIT_VIEWER SYS CAPTURE_ADMIN SYS GATHER_SYSTEM_STATISTICS SYS OPTIMIZER_PROCESSING_RATE SYS EM_EXPRESS_ALL SYS JAVAUSERPRIV SYS GSMADMIN_ROLE SYS XDB_WEBSERVICES_OVER_HTTP SYS SODA_APP SYS DATAPATCH_ROLE SYS ORDADMIN GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS DV_REALM_RESOURCE SYS EXP_FULL_DATABASE SYS GSMROOTUSER_ROLE SYS DBMS_MDX_INTERNAL SYS RECOVERY_CATALOG_OWNER_VPD SYS RECOVERY_CATALOG_USER SYS EM_EXPRESS_BASIC SYS SCHEDULER_ADMIN SYS LBAC_DBA SYS DBA SYS PDB_DBA GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS AUDIT_ADMIN SYS LOGSTDBY_ADMINISTRATOR SYS PROVISIONER SYS XS_NAMESPACE_ADMIN SYS GGSYS_ROLE SYS JAVAIDPRIV SYS JAVASYSPRIV SYS APPLICATION_TRACE_VIEWER SYS DBFS_ROLE SYS DATAPUMP_IMP_FULL_DATABASE SYS RECOVERY_CATALOG_OWNER GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS OEM_ADVISOR SYS XDBADMIN SYS XDB_SET_INVOKER SYS RDFCTX_ADMIN SYS CONNECT SYS SELECT_CATALOG_ROLE SYS EXECUTE_CATALOG_ROLE SYS DATAPUMP_EXP_FULL_DATABASE SYS XS_CACHE_ADMIN SYS SYSUMF_ROLE SYS HS_ADMIN_EXECUTE_ROLE GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS GDS_CATALOG_SELECT SYS AUTHENTICATEDUSER SYS XDB_WEBSERVICES SYS XDB_WEBSERVICES_WITH_PUBLIC SYS EJBCLIENT SYS JMXSERVER SYS CTXAPP SYS CDB_DBA SYS AQ_USER_ROLE SYS ADM_PARALLEL_EXECUTE_TASK SYS XS_CONNECT GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS OEM_MONITOR SYS BDSQL_USER SYS HS_ADMIN_SELECT_ROLE SYS GSMUSER_ROLE SYS AQ_ADMINISTRATOR_ROLE SYS BDSQL_ADMIN SYS JAVADEBUGPRIV SYS JAVA_ADMIN SYS OLAP_DBA SYS OLAP_USER SYS RESOURCE GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYS IMP_FULL_DATABASE SYS XS_SESSION_ADMIN SYS HS_ADMIN_ROLE SYS GSM_POOLADMIN_ROLE SYS DBJAVASCRIPT SYS OLAP_XS_ADMIN SYS DV_REALM_OWNER 73行が選択されました。
SYSTEMユーザーの権限を DBA_SYS_PRIVS で確認
SQL> select grantee, privilege from dba_sys_privs where grantee='SYSTEM'; GRANTEE PRIVILEGE -------- ---------------------------------------- SYSTEM GLOBAL QUERY REWRITE SYSTEM CREATE TABLE SYSTEM DEQUEUE ANY QUEUE SYSTEM ENQUEUE ANY QUEUE SYSTEM SELECT ANY TABLE SYSTEM MANAGE ANY QUEUE SYSTEM UNLIMITED TABLESPACE SYSTEM CREATE MATERIALIZED VIEW 8行が選択されました。
SYSTEMユーザーのロールをDBA_ROLE_PRIVS で確認
SQL> select grantee, granted_role from dba_role_privs where grantee='SYSTEM'; GRANTEE GRANTED_ROLE -------- ---------------------------------------- SYSTEM DBA SYSTEM AQ_ADMINISTRATOR_ROLE
比べてみると、付与されている権限もロールも、SYSユーザーの方が圧倒的の多いのが分かります。
次の管理ユーザー・アカウントはOracle Databaseをインストール時に自動的に作成されます。インストールの際に適用したパスワードを使用しても作成できます。どちらも自動的にDBAロールが付与されます。
SYS
このアカウントでは、すべての管理機能を実行できます。データベースのデータ・ディクショナリ用のすべての実表およびベース・ビューはSYSスキーマに保存されます。これらの実表およびベース・ビューはOracle Databaseを操作する際に重要となります。データ・ディクショナリの整合性を保持するには、SYSスキーマ内の表をデータベースのみで操作します。すべてのユーザーまたはデータベース管理者による変更は絶対に行わないでください。また、SYSスキーマ内に表を作成しないでください。
SYSユーザーにはSYSDBA権限が付与され、この権限によりバックアップやリカバリのような高水準な管理タスクを実行できます。
SYSTEM
このアカウントは、次の例外を除いたすべての管理機能を実行します。
バックアップとリカバリ
データベースのアップグレード
このアカウントを使用して日常的な管理タスクを実行できますが、Oracle Databaseを管理するための名前付きユーザー・アカウントを作成して、データベース・アクティビティを監視できるようにすることをお薦めします。 引用元: Oracle Database 2日でデータベース管理者 > 7.3.1 SYSおよびSYSTEMユーザー
SYSユーザーとSYSTEMユーザーの違い(私の自分なりの解釈)
- SYSユーザー:
Oracleのすべての管理権限(バックアップ、リカバリ含む)を持つ
データディクショナリの所有者
SYSDBAとして接続する
Oracle DBがOPENしてなくても、アイドルインスタンス状態にも接続でき、DBの起動、停止、作成ができる - SYSTEMユーザー:
Oracleの通常の管理作業を行う管理権限を持つ
SYSユーザーが持つ権限よりも限定されていて、バックアップ、リカバリはできない
NORMALで接続する
ログインするときの「as sysdba」の要否
SYSDBA権限とは
SYSDBAおよびSYSOPERはデータベースの作成、起動、停止、バックアップまたはリカバリなどの高度な管理操作を実行するために必要な管理権限です。SYSDBAシステム権限は、すべての権限を持つデータベース管理者用、SYSOPERシステム権限は、基本的な運用タスクを実行するがユーザー・データを表示する権限は持たないユーザー用です。
SYSDBAおよびSYSOPERは、データベースがオープンでないときもデータベース・インスタンスにアクセスできるシステム権限です。これらの権限の制御は完全にデータベース外で行われています。この制御により、これらの権限のいずれかを付与されている管理者は、データベース・インスタンスに接続してデータベースを起動できます。
SYSDBA権限およびSYSOPER権限は、他の方法では権限が付与されない特定のデータベース操作を実行可能にする接続のタイプと考えることもできます。たとえば、SYSDBA権限がある場合、AS SYSDBAを使用してデータベースに接続できます。
SYSユーザーはインストール後すぐにSYSDBAの権限を自動的に付与されます。SYSユーザーとしてログインする場合、SYSDBAまたはSYSOPERとしてデータベースに接続する必要があります。SYSDBAユーザーとして接続すると、SYSDBA権限が発動され、SYSOPERユーザーとして接続すると、SYSOPER権限が発動されます。EM Expressを使用すると、ユーザーSYSとしてログインし、SYSDBAまたはSYSOPERとして接続できます。
SYSDBAまたはSYSOPER権限で接続すると、通常はユーザー名に関連付けられているスキーマではなく、デフォルトのスキーマで接続が確立されます。このスキーマは、SYSDBAの場合はSYS、SYSOPERの場合は、PUBLICです。 引用元: Oracle Database 2日でデータベース管理者 > 7.3.2 SYSDBAおよびSYSOPERシステム権限
DBサーバー上のoracleユーザーでOS認証で接続
sys / as sysdba
[oracle@SV-PLUTO ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:43:52 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYS"です。 SQL>
SYSユーザーは「as sysdba」が必要
sqlplus sys/●●●●●●●●●● as sysdba
[oracle@SV-PLUTO ~]$ sqlplus sys/●●●●●●●●●● as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:45:39 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYS"です。 SQL>
SYSユーザーは「as sysdba」をつける必要がある。つけないとログインできない。
[oracle@SV-PLUTO ~]$ sqlplus sys/●●●●●●●●●● SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:46:35 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. ERROR: ORA-28009: SYSでの接続はSYSDBAまたはSYSOPERで行う必要があります ユーザー名を入力してください:
リモートPCから接続する場合は以下
C:\>sqlplus sys/●●●●●●●●●●@ORCLCDB as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:51:32 2020 Version 19.5.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYS"です。 SQL>
C:\>sqlplus sys/●●●●●●●●●●@ORCLCDB SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:53:55 2020 Version 19.5.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. ERROR: ORA-28009: SYSでの接続はSYSDBAまたはSYSOPERで行う必要があります ユーザー名を入力してください:
OsqlEditの場合も、SYSユーザーはMODE=「SYSDBA」にする必要がある。
SYSユーザーでMODE=「NORMAL」にすると下記エラーメッセージが表示される。
SYSTEMユーザーは「as sysdba」は不要
sqlplus system/●●●●●●●●●●
[oracle@SV-PLUTO ~]$ sqlplus system/●●●●●●●●●● SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:48:04 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. 最終正常ログイン時間: 月 1月 13 2020 12:51:42 +09:00 Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYSTEM"です。 SQL>
SYSTEMユーザーで「as sysdba」をつけると、SYSユーザーで接続した状態になった。
[oracle@SV-PLUTO ~]$ sqlplus system/●●●●●●●●●● as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:49:27 2020 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYS"です。 SQL>
リモートPCから接続する場合は以下
C:\>sqlplus system/●●●●●●●●●●@ORCLCDB SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:54:51 2020 Version 19.5.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. 最終正常ログイン時間: 月 1月 13 2020 17:49:16 +09:00 Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 に接続されました。 SQL> show user ユーザーは"SYSTEM"です。 SQL>
リモートPCからだと、SYSTEMユーザーに「as sysdba」をつけるとログインできない。
C:\>sqlplus system/●●●●●●●●●●@ORCLCDB as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on 月 1月 13 17:55:40 2020 Version 19.5.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. ERROR: ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。 ユーザー名を入力してください:
OsqlEditでは、SYSTEMユーザーのときはMODE=「NORMAL」として接続する。
SYSTEMユーザーでMODE=「SYSDBA」にすると下記エラーメッセージが出てしまう。
参考にしたサイト
docs.oracle.com www.earthlink.co.jp
オラクルデータベースのおススメの勉強法の紹介
私は、某SIerに勤務しながら、入社以来10年以上、オラクルデータベースを使用したシステムに関わる仕事をしています。
オラクルデータベースについて、仕事場以外でも勉強をしたい、おススメの勉強法を知りたい、と考えている方のために、
①おすすめの書籍と、②おすすめのオンライン学習サイト、
を紹介します。
働きながら勉強するための、おススメの書籍とオンラインで学習できるサイトの紹介です
オラクルデータベースの勉強ができるおススメ書籍
朝の通勤時や帰宅時の電車の中や、社外打合せへの移動中などに勉強するなら、やはり書籍が一番だと思います。
Oracleの基本 ~データベース入門から設計/運用の初歩まで
技術エキスパートとして認定されたOracle ACEの渡部亮太さんの書かれた本です。
https://twitter.com/wrcsus4twitter.com
本書では、Oracle初心者/新人エンジニアが押さえておくべき知識とスキルを、現場で活躍するOracleエンジニアたちが、わかりやすく丁寧に解説。
Oracleの使い方はもちろん、データベースの基礎知識から、データ操作のためのSQL、テーブル設計、データベース運用/管理の基礎までしっかり押さえ、実務で使える入門スキルを身につけられます。
Oracleを学びたいすべての人に最適な入門書です。
Oracleの基本 ~データベース入門から設計/運用の初歩まで |
プロとしてのOracleアーキテクチャ入門【第2版】
もう1冊、こちらもOracle ACEの渡部亮太さんの書かれた本です。
本書は、Oracle Databaseのアーキテクチャ(内部構成)について解説した入門書です。 本書の内容を理解することで「Oracleの動作の仕組み」を本質的に理解することができます。 これからOracleを使用する初心者の方から、実際にシステムの開発や運用管理を行っている DBエンジニアやシステムエンジニアの方を対象としています。
プロとしてのOracleアーキテクチャ入門【第2版】(12c、11g、10g 対応) 図解と実例解説で学ぶ、データベースの仕組み (Oracle現場主義) |
オラクルデータベースの勉強ができるオンライン学習サイト
iStudy
オラクルのeラーニングサイトといえば、「iStudy」です。
オラクル関連のいろいろなコースが用意されています。
Oracleの管理者ユーザーSYSとSYSTEMの違いまとめ
- SYSユーザーの方がより権限が強い
- 通常のメンテナンス作業で使うのはSYSTEM
- SYSはデータベースの起動・停止、バックアップ・リストアまでできる
- SYSはログイン時は「as sysdba」が必要
以上、読んでいただきありがとうございました。