我在电脑上安装了Oracle Database 11g表达版(Windows 7) 我也安装了Oracle SQL Developer。
我想创建一个简单的数据库,可能只有一个或两个表,然后使用Oracle SQL Developer插入数据并进行查询。
当我打开Oracle SQL Developer时,它要求我创建一个新连接,因此它假定已经创建了一个数据库。
所以我的问题是,如何在Oracle 11g中创建初始数据库?
答案 0 :(得分:55)
安装XE后,它会自动创建一个名为" XE"的数据库。您可以使用您的登录系统"和您设置为登录的密码。
关键信息
服务器:(您定义)
港口:1521
数据库:XE
用户名:system
密码:(您已定义)
Oracle也很困难,并没有告诉你轻松创建另一个数据库。除了" XE"。
之外,您还必须使用SQL或其他工具创建更多数据库答案 1 :(得分:54)
此链接:Creating the Sample Database in Oracle 11g Release 2是创建示例数据库的一个很好的示例。
如果您遇到创建数据库时遇到的一些常见问题,此链接:Newbie Guide to Oracle 11g Database Common Problems可以为您提供帮助。
祝你好运!
编辑:当您使用XE时,您应该已经创建了一个数据库,使用SQL * Plus和SQL Developer等进行连接。信息位于:Connecting to Oracle Database Express Edition and Exploring It。
提取物:
从SQL Developer SQL Developer连接到Oracle数据库XE是一个 客户端程序,您可以使用它来访问Oracle数据库XE。同 Oracle Database XE 11g第2版(11.2),您必须使用SQL Developer 3.0版。本节假定已安装SQL Developer 您的系统,并显示如何启动它并连接到Oracle数据库 XE。如果系统上未安装SQL Developer,请参阅Oracle 数据库SQL Developer用户指南,了解安装说明。
注意:
对于以下过程:第一次启动SQL Developer 在您的系统上,您必须在步骤1中提供java.exe的完整路径。
对于第4步,您需要一个用户名和密码。
对于第6步,您需要一个主机名和端口。
从SQL Developer连接到Oracle Database XE:
启动SQL Developer。
有关说明,请参阅“Oracle数据库SQL开发人员用户指南”。
如果这是您第一次启动SQL Developer 系统,系统会提示您输入java.exe的完整路径(for 例如,C:\ jdk1.5.0 \ bin \ java.exe)。之后键入完整路径 提示或浏览到它,然后按Enter键。
将打开Oracle SQL Developer窗口。
在窗口的导航框架中,单击“连接”。
出现“连接”窗格。
在“连接”窗格中,单击“新建连接”图标。
将打开“新建/选择数据库连接”窗口。
在“新建/选择数据库连接”窗口中,键入相应的内容 连接名称,用户名和密码字段中的值。
为安全起见,您键入的密码字符显示为 星号。
“密码”字段旁边是“保存密码”复选框。默认情况下,它 被取消选择。 Oracle建议接受默认值。
在New / Select Database Connection窗口中,单击Oracle。
选项卡出现Oracle窗格。
在Oracle窗格中:
对于连接类型,接受默认值(基本)。
对于Role,接受默认值。
在主机名和端口字段中,接受默认值或键入 适当的值。
选择选项SID。
在SID字段中,键入accept default(xe)。
在“新建/选择数据库连接”窗口中,单击“测试”按钮。
测试连接。如果连接成功,则为Status 指标从空白变为成功。
插图success.gif的描述
如果测试成功,请单击“连接”按钮。
“新建/选择数据库连接”窗口关闭。 “连接”窗格 显示您在“连接名称”中输入的名称的连接 第4步中的字段。
您在SQL Developer环境中。
要退出SQL Developer,请从“文件”菜单中选择“退出”。
答案 2 :(得分:5)
“如何创建初始数据库?”
您在安装XE时创建了一个数据库。在某些时候,安装过程会提示您输入SYSTEM帐户的密码。使用它可以使用应用程序菜单上的SQL命令行连接到XE数据库。
XE文档在线且非常有用。 Find it here
答案 3 :(得分:2)
将以下代码保存在批处理文件中(例如createOraDbWin.bat)。更改app_name,ora_dir等参数值,使用管理权限运行文件。批处理文件创建一个基本的oracle数据库:
注意:可能需要很长时间(比如大约30分钟)
REM ASSUMPTIONS
rem oracle xe has been installed
rem oracle_home has been set
rem oracle_sid has been set
rem oracle service is running
REM SET PARAMETERS
set char_set =al32utf8
set nls_char_set =al16utf16
set ora_dir=d:\app\db\oracle
set version=11.2.0.0
set app_name=xyz
set db_name=%app_name%_db
set db_sid=%db_name%_sid
set db_ins=%db_name%_ins
set sys_passwd=x3y5z7
set system_passwd=1x4y9z
set max_log_files=32
set max_log_members=4
set max_log_history=100
set max_data_files=254
set max_instances=1
set version_dir=%ora_dir%\%version%
set db_dir=%version_dir%\%db_name%
set instl_temp_dir=%db_dir%\instl\script
set system_dir=%db_dir%\system
set user_dir=%db_dir%\user
set undo_dir=%db_dir%\undo
set sys_aux_dir=%db_dir%\sysaux
set temp_dir=%db_dir%\temp
set control_dir=%db_dir%\control
set pfile_dir=%db_dir%\pfile
set data_dir=%db_dir%\data
set index_dir=%db_dir%\index
set log_dir=%db_dir%\log
set backup_dir=%db_dir%\backup
set archive_dir=%db_dir%\archive
set data_dir=%db_dir%\data
set index_dir=%db_dir%\index
set log_dir=%db_dir%\log
set backup_dir=%db_dir%\backup
set archive_dir=%db_dir%\archive
set undo_dir=%db_dir%\undo
set default_dir=%db_dir%\default
set system_tbs=%db_name%_system_tbs
set user_tbs=%db_name%_user_tbs
set sys_aux_tbs=%db_name%_sys_aux_tbs
set temp_tbs=%db_name%_temp_tbs
set control_tbs=%db_name%_control_tbs
set data_tbs=%db_name%_data_tbs
set index_tbs=%db_name%_index_tbs
set log_tbs=%db_name%_log_tbs
set backup_tbs=%db_name%_backup_tbs
set archive_tbs=%db_name%_archive_tbs
set undo_tbs=%db_name%_undo_tbs
set default_tbs=%db_name%_default_tbs
set system_file=%system_dir%\%db_name%_system.dbf
set user_file=%user_dir%\%db_name%_user.dbf
set sys_aux_file=%sys_aux_dir%\%db_name%_sys_aux.dbf
set temp_file=%temp_dir%\%db_name%_temp.dbf
set control_file=%control_dir%\%db_name%_control.dbf
set data_file=%data_dir%\%db_name%_data.dbf
set index_file=%index_dir%\%db_name%_index.dbf
set backup_file=%backup_dir%\%db_name%_backup.dbf
set archive_file=%archive_dir%\%db_name%_archive.dbf
set undo_file=%undo_dir%\%db_name%_undo.dbf
set default_file=%default_dir%\%db_name%_default.dbf
set log1_file=%log_dir%\%db_name%_log1.log
set log2_file=%log_dir%\%db_name%_log2.log
set log3_file=%log_dir%\%db_name%_log3.log
set init_file=%pfile_dir%\init%db_sid%.ora
set db_create_file=%instl_temp_dir%\createdb.sql
set db_drop_file=dropdb.sql
set db_create_log=%instl_temp_dir%\db_create.log
set db_drop_log=db_drop.log
set oracle_sid=%db_sid%
REM WRITE DROP DATABASE SQL COMMANDS TO FILE
echo shutdown immediate;>%db_drop_file%
echo startup mount exclusive restrict;>>%db_drop_file%
echo drop database;>>%db_drop_file%
REM EXECUTE DROP DATABASE SQL COMMANDS FROM THE FILE
rem sqlplus -s "/as sysdba" @"%db_drop_file%">%db_drop_log%
REM DELETE WINDOWS ORACLE SERVICE
rem oradim -delete -sid %db_sid%
REM CREATE DIRECTORY STRUCTURE
md %system_dir%
md %user_dir%
md %sys_aux_dir%
md %temp_dir%
md %control_dir%
md %pfile_dir%
md %data_dir%
md %index_dir%
md %log_dir%
md %backup_dir%
md %archive_dir%
md %undo_dir%
md %default_dir%
md %instl_temp_dir%
REM WRITE INIT FILE PARAMETERS TO INIT FILE
echo db_name='%db_name%'>%init_file%
echo memory_target=1024m>>%init_file%
echo processes=150>>%init_file%
echo sessions=20>>%init_file%
echo audit_file_dest=%user_dir%>>%init_file%
echo audit_trail ='db'>>%init_file%
echo db_block_size=8192>>%init_file%
echo db_domain=''>>%init_file%
echo diagnostic_dest=%db_dir%>>%init_file%
echo dispatchers='(protocol=tcp) (service=%app_name%xdb)'>>%init_file%
echo shared_servers=4>>%init_file%
echo open_cursors=300>>%init_file%
echo remote_login_passwordfile='exclusive'>>%init_file%
echo undo_management=auto>>%init_file%
echo undo_tablespace='%undo_tbs%'>>%init_file%
echo control_files = ("%control_dir%\control1.ora", "%control_dir%\control2.ora")>>%init_file%
echo job_queue_processes=4>>%init_file%
echo db_recovery_file_dest_size = 10g>>%init_file%
echo db_recovery_file_dest=%log_dir%>>%init_file%
echo compatible ='11.2.0'>>%init_file%
REM WRITE DB CREATE AND ITS RELATED SQL COMMAND TO FILE
echo startup nomount pfile='%init_file%';>>%db_create_file%
echo.>>%db_create_file%
echo create database %db_name%>>%db_create_file%
echo user sys identified by %sys_passwd%>>%db_create_file%
echo user system identified by %system_passwd%>>%db_create_file%
echo logfile group 1 ('%log1_file%') size 100m,>>%db_create_file%
echo group 2 ('%log2_file%') size 100m,>>%db_create_file%
echo group 3 ('%log3_file%') size 100m>>%db_create_file%
echo maxlogfiles %max_log_files%>>%db_create_file%
echo maxlogmembers %max_log_members%>>%db_create_file%
echo maxloghistory %max_log_history%>>%db_create_file%
echo maxdatafiles %max_data_files%>>%db_create_file%
echo character set %char_set %>>%db_create_file%
echo national character set %nls_char_set %>>%db_create_file%
echo extent management local>>%db_create_file%
echo datafile '%system_file%' size 325m reuse>>%db_create_file%
echo sysaux datafile '%sys_aux_file%' size 325m reuse>>%db_create_file%
echo default tablespace %default_tbs%>>%db_create_file%
echo datafile '%default_file%'>>%db_create_file%
echo size 500m reuse autoextend on maxsize unlimited>>%db_create_file%
echo default temporary tablespace %temp_tbs%>>%db_create_file%
echo tempfile '%temp_file%'>>%db_create_file%
echo size 20m reuse>>%db_create_file%
echo undo tablespace %undo_tbs%>>%db_create_file%
echo datafile '%undo_file%'>>%db_create_file%
echo size 200m reuse autoextend on maxsize unlimited;>>%db_create_file%
echo.>>%db_create_file%
echo @?\rdbms\admin\catalog.sql>>%db_create_file%
echo.>>%db_create_file%
echo @?\rdbms\admin\catproc.sql>>%db_create_file%
echo.>>%db_create_file%
echo create spfile from pfile='%init_file%';>>%db_create_file%
echo.>>%db_create_file%
echo shutdown immediate;>>%db_create_file%
echo.>>%db_create_file%
echo startup;>>%db_create_file%
echo.>>%db_create_file%
echo show parameter spfile;>>%db_create_file%
echo.>>%db_create_file%
REM CREATE WINDOWS ORACLE SERVICE
oradim -new -sid %db_sid% -startmode auto
REM EXECUTE DB CREATE SQL COMMANDS FROM FILE
sqlplus -s "/as sysdba" @"%db_create_file%">%db_create_log%
pause
欢迎您的更正和改进!
答案 4 :(得分:0)
如果希望在XE中创建新的架构,则需要创建一个USER并分配其特权。请按照下列步骤操作:
SQL> connect sys as sysdba
SQL> CREATE USER myschema IDENTIFIED BY Hga&dshja;
SQL> ALTER USER myschema QUOTA unlimited ON SYSTEM;
SQL> GRANT CREATE SESSION, CONNECT, RESOURCE, DBA TO myschema;
SQL> GRANT ALL PRIVILEGES TO myschema;
现在,您可以通过 Oracle SQL Developer 连接并创建表。