技術ブログ
目次
Oracle ACE Proの渡部です。 主要なRDBMS製品を比較します。
立場の表明
以下にu1ユーザーでローカル接続する例を示します。
$ export ORACLE_SID=orcl
$ sqlplus u1/Password123
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Sep 5 16:05:59 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Last Successful login time: Mon Sep 05 2022 16:05:22 +09:00
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL>
以下にu1ユーザーでリモート接続する例を示します。
$ sqlplus u1/Password123@sv1:1521/orcl
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Sep 5 16:07:48 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Last Successful login time: Mon Sep 05 2022 16:05:59 +09:00
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL>
接続先Oracleインスタンスのデータベースサービス名は、lsnrctl servicesで確認できます。
$ lsnrctl services
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 05-SEP-2022 16:08:07
Copyright (c) 1991, 2022, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sv1)(PORT=1521)))
Services Summary...
Service "orcl" has 1 instance(s). ←★★
Instance "orcl", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:1 refused:0 state:ready
LOCAL SERVER
Service "orclXDB.world" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: l8dpa223ad1.domain, pid: 2420>
(ADDRESS=(PROTOCOL=tcp)(HOST=sv1)(PORT=22685))
The command completed successfully
$
以下にu1ユーザーでローカル接続する例を示します。
$ mysql -u u1 -pPassword123-
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.30 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
以下にu1ユーザーでリモート接続する例を示します。
$ mysql -h sv1 -u u1 -pPassword123-
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.30 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
以下にu1ユーザーでローカル接続(Unixドメインソケット接続)する例を示します。
$ psql -d db1 -U u1 -W
Password:
psql (14.5)
Type "help" for help.
db1=>
以下にu1ユーザーでリモート接続する例を示します。
$ psql -h sv1 -d db1 -U u1 -W
Password:
psql (14.5)
Type "help" for help.
db1=>
導入が完了した時点で定義済みの、管理ユーザー(管理権限をもつユーザー)についてまとめます。
SYSユーザーでリモート接続
$ id
uid=500(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),504(backupdba),505(dgdba),506(kmdba),512(asmdba),514(racdba)
$ sqlplus sys/Password123@localhost:1521/orcl.world as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 1 19:07:57 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> show user
USER is "SYS"
SQL>
SYSユーザーでローカル接続
$ printenv ORACLE_SID
orcl
$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 1 19:09:06 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> show user
USER is "SYS"
SQL>
SYSTEMユーザーで接続
$ sqlplus system/Password123
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 1 19:10:01 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Last Successful login time: Thu Aug 25 2022 14:59:51 +09:00
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> show user
USER is "SYSTEM"
SQL> shutdown immediate
ORA-01031: insufficient privileges
SQL>
postgresユーザーで接続(パスワード指定無し)
$ psql
psql (14.5)
Type "help" for help.
postgres=# select current_user;
current_user
--------------
postgres
(1 row)
Windows認証モードで接続
C:\Users\Administrator>whoami
w162ms1s\administrator
C:\Users\Administrator>sqlcmd -S localhost -y 32 -Y 32
1> SELECT ORIGINAL_LOGIN(), USER_NAME();
2> GO
-------------------------------- --------------------------------
W162MS1S\Administrator dbo
(1 行処理されました)
1>
SQL Server認証モードで接続(ログインsa)
C:\Users\Administrator>sqlcmd -S localhost -U sa -P %SA_PASSWD% -y 32 -Y 32
1> SELECT ORIGINAL_LOGIN(), USER_NAME();
2> GO
-------------------------------- --------------------------------
sa dbo
(1 行処理されました)
1>
管理ユーザーではなく、一般ユーザーを対象とした説明です。
以下にユーザーの作成例を示します。
$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 1 14:58:04 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> CREATE USER u1 IDENTIFIED BY "Password123" QUOTA UNLIMITED ON USERS;
User created.
SQL> GRANT CREATE SESSION, RESOURCE TO u1;
Grant succeeded.
SQL> connect u1/Password123
Connected.
SQL> show user
USER is "U1"
以下にユーザーの作成例を示します。
$ sqlplus sys/Password123@localhost:1521/pdb1 as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 1 14:58:04 2022
Version 19.15.0.0.0
Copyright (c) 1982, 2022, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.15.0.0.0
SQL> CREATE USER u1 IDENTIFIED BY "Password123" QUOTA UNLIMITED ON USERS;
User created.
SQL> GRANT CREATE SESSION, RESOURCE TO u1;
Grant succeeded.
SQL> connect u1/Password123@localhost:1521/pdb1
Connected.
SQL> show user
USER is "U1"
以下にユーザーの作成例を示します。
# mysql -uroot -pPassword123-
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.30 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> CREATE USER u1@'%' IDENTIFIED BY 'Password123-';
Query OK, 0 rows affected (0.02 sec)
mysql> GRANT ALL ON db1.* TO u1@'%';
Query OK, 0 rows affected (0.01 sec)
mysql> SHOW GRANTS FOR u1@'%';
+---------------------------------------------+
| Grants for u1@% |
+---------------------------------------------+
| GRANT USAGE ON *.* TO u1
@%
|
| GRANT ALL PRIVILEGES ON db1
.* TO u1
@%
|
+---------------------------------------------+
2 rows in set (0.00 sec)
mysql> exit
Bye
# mysql -uu1 -pPassword123- -Ddb1
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.30 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| u1@% |
+----------------+
1 row in set (0.00 sec)
mysql>
以下にユーザーの作成例を示します。
$ psql
psql (14.5)
Type "help" for help.
postgres=# select current_user;
current_user
--------------
postgres
(1 row)
postgres=# CREATE USER u1 PASSWORD 'Password123-';
CREATE ROLE
postgres=# exit
$ psql -h 172.31.35.31 -U u1 -d db1 -W
Password:
psql (14.5)
Type "help" for help.
db1=> select current_user, current_database(), current_schema;
current_user | current_database | current_schema
--------------+------------------+----------------
u1 | db1 | public
(1 row)
以下にログインとユーザーの作成例を示します。
C:\Users\Administrator>sqlcmd -S localhost -U sa -P Password123
1> CREATE LOGIN u2 WITH PASSWORD=N'Password123-';
2> GO
1> use db1
2> GO
データベース コンテキストが 'db1' に変更されました。
1> CREATE USER u2 FOR LOGIN u2;
2> GO
1> exit
C:\Users\Administrator>sqlcmd -S localhost -U u2 -P Password123- -d db1 -w 80
1> SELECT DB_NAME() AS [Current Database], USER_NAME() AS [Current User];
2> GO
Current Database
Current User
--------------------------------------------------------------------------------
------------------------------------------------ -------------------------------
--------------------------------------------------------------------------------
-----------------
db1
u2
(1 行処理されました)
Database Performance Analyzer (DPA) は、オンプレミス&クラウドに対応するデータベース性能監視/分析ツールです。
この記事で取り上げたRDBMS製品を含む、非常に多くのデータベース製品/サービスに対応しています。
以下の特徴があり、導入しやすく有用な製品です。
コーソルはDatabase Performance Analyzer (DPA)の一次代理店で、Database Performance Analyzer (DPA)の製品販売を行います。 SIer様、販社様がDatabase Performance Analyzer (DPA)を販売および導入することも可能です。
コーソルはデータベースの技術力を強みとしています。なかでもOracle Database技術力は日本随一です。MySQL、PostgreSQL、MS SQL Serverの資格や実績を持つエンジニアも多数在籍しております。
DPAの導入や監視設定に関する手順をナレッジとして公開しています。評価版をご利用される際の参考にしていただけると幸いです。
7年連続ORACLE MASTER Platinum取得者数No.1! Oracle Certification Award 2020
コーソルでは、データベース運用を製品とサービスでご支援します。
Database Performance Analyzer (DPA)は、オンプレミスとクラウド上の多くのデータベース製品に対応したデータベース性能管理製品です。低価格であるため、非常に導入しやすいです。
Database Performance Analyzer (DPA)で検出された問題SQLをチューニングする際に、Toad for Oracle / Toad for SQL Serverの SQL Optimizer機能を使用できます。
リモートDBAサービスはDB・運用の専門家がお客様のデータベースに対して 必要な時に必要な対応を行うリモート接続型運用保守サービスです。
リモートDBAサービス
時間制コンサルティングサービスは”必要な時に” ”必要な時間だけ”契約できる 時間契約型のコンサルティングサービスです。
時間制コンサルティングサービス