Please help me understand this statement:
A database in MySQL is a schema in Oracle.
I have just started to use Oracle and I find it different from other RDBMS softwares I have used like MSSQL, MySQL and Derby.
For example to create a database, when I use create database ghazals
, it throws an error:
ERROR at line 1:
ORA-01501: CREATE DATABASE failed
ORA-01100: database already mounted
Also, commands like show databases
do not work here.
Best Answer
It's simple.
MySQL has a single daemon that runs the database server. Within the server you can create any number of databases - these databases have no direct mapping to users.
Oracle has a single database. When you create a user in an Oracle database, it also creates a Schema with the same name as the user that created it. This is equivalent to a database in MySQL.
Having seen the edit to your question, you really need to forget about mysql while you learn Oracle. DDL and RDBMS concepts are completely different.
Start with the Oracle Server Concepts guide (link). The Oracle documentation home is here: http://www.oracle.com/pls/db112/homepage.
To create a user, the syntax would be:
You'll then need to grant appropriate privileges to allow the user to connect: