重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1
成都创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为宜城企业提供专业的网站建设、网站设计,宜城网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
按住键盘上Windows键,打开开始菜单,找到Database Configuration Assitant并打开
2
打开数据库配置助手Database Configuration Assitant,单击“下一步”;
步骤1:选择“创建数据库”,单击“下一步”
3
步骤2:选择“一般用途或事务处理”,单击“下一步”;
步骤3:设置数据库的名称和实例名,两者可设置相同,也可以不同,单击“下一步”
4
步骤4:管理选项配置,不勾选配置Enterprise Manager,单击“下一步”;
步骤5:数据库身份证明,可以为不同的账户分别设置不同的管理口令,也可以为所有账户设置同一口令,单击“下一步”
5
步骤6:数据库文件所在位置,默认存储类型:文件系统,存储位置:使用模版中的数据库文件位置,也可以自己指定存储路径,单击“下一步”;
步骤7:恢复配置,指定快速恢复区
6
步骤8:数据库内容,根据需要,选择是否添加示例方案,单击“下一步”;
步骤9:初始化参数,设置内存、字符集等,单击“下一步”
7
步骤10:数据库存储,控制文件、数据文件、重做日志文件位置设置,单击“下一步”;
步骤11 :创建选项,创建数据库,生成脚本,单击“完成”,开始创建数据库
plsql如何配置连接oracle数据库,具体操作方法如下:
1、首先我们打开PLSQL,点取消进去进入数据库。
2、然后弹出PLSQL主界面,找到菜单栏的tools选择属性preferences进去。
3、弹出如下界面,配置oracleclient,配置好两个设置项,点apply,然后点ok,关闭PLSQL,重启PLSQL。
4、上边的两个填写项就是第一步中的目录,以及目录下的一个文件,如下图所示,在哪个目录就对应的去找就可以了。
5、重启PLSQL进入到登录界面,输入相关信息,用户名密码,以及连接信息连接信息:可以是ip:1521/实例名,也可以是network/admin目录下的tnsname.ora中配置的TNS别名。
6、连接进去成功之后。可以随便写一个语句查查,是否正常,查询无误。
1.安装oracle 11g
2.Oracle自带的SQL Developer
在安装完Oracle Database 11g Release 2数据库,想试一下Oracle自带的SQL DeveloperW工具,在操作系统菜单的所有程序中找到SQL Developer如下所示,并单击:
结果却提示缺少快捷方式,没找到“SQLDEVELOPER.BAT”,**
在Oracle的安装目录D:\DataBaseInstall\Oralce_11g_r2\product\11.2.0\dbhome_1\sqldeveloper\sqldeveloper\bin下的确也没找到sqldeveloper.bat文件。网上很多人都说重新下载SQL Developer替换掉安装Oracle时自带的那个。
重新到Oracle官网下载SQL Developer,当前最新版下载地址:
将下载下来的 sqldeveloper64-3.2.20.09.87-no-jre.zip解压到Oracle安装目录下
这时重新单击操作系统菜单中的“SQL Developer”,看到命令窗口闪一下就消失了。看了一下SQL Developer的“readme.html”文档知道了SQL Developer 3.2支持的Java版本至少要1.6.0_04。
那就下载当前最新JDK安装,在这里我下载的是jrockit-jdk1.6.0_37-R28.2.5-4.1.0-windows-x64.exe。下载完成后双击出现如下安装界面:
在欢迎窗口中单击“Next”:
设置JDK安装目录,单击“Next”:
这里问你是否需要安装示例或源代码,根据需要选择,这里我就不选了直接单击“Next”:
这里是否安装JRE,选择“Yes”,单击“Next”:
设置JRE安装目录,单击“Next”:
安装过程:
安装完毕,单击“Done”关闭。
现在新的JDK安装完后,重新单击操作系统菜单中的“SQL Developer”,这时“SQL Developer”可以启动,但是报了如下的异常:
Exception initializing 'oracle.dbtools.raptor.plsql.PLSQLAddin' in extension 'Or
acle SQL Developer': java.lang.NoClassDefFoundError: com/sun/jdi/Bootstrap
at oracle.jdevimpl.debugger.jdi.DebugJDIConnector.getVersion(DebugJDICon
nector.java:30)
at oracle.jdevimpl.debugger.support.DebugFactory.(DebugFactory.j
ava:81)
at oracle.dbtools.raptor.plsql.PLSQLAddin.initialize(PLSQLAddin.java:97)
at oracle.ideimpl.extension.AddinManagerImpl.initializeAddin(AddinManage
rImpl.java:407)
at oracle.ideimpl.extension.AddinManagerImpl.initializeAddins(AddinManag
erImpl.java:214)
at oracle.ideimpl.extension.AddinManagerImpl.initProductAndUserAddins(Ad
dinManagerImpl.java:128)
at oracle.ide.IdeCore.initProductAndUserAddins(IdeCore.java:1941)
at oracle.ide.IdeCore.startupImpl(IdeCore.java:1565)
at oracle.ide.Ide.startup(Ide.java:703)
at oracle.ideimpl.DefaultIdeStarter.startIde(DefaultIdeStarter.java:35)
at oracle.ideimpl.Main.start(Main.java:184)
at oracle.ideimpl.Main.main(Main.java:146)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at oracle.ide.boot.PCLMain.callMain(PCLMain.java:62)
at oracle.ide.boot.PCLMain.main(PCLMain.java:54)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodA
ccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at oracle.classloader.util.MainClass.invoke(MainClass.java:128) at oracle.ide.boot.IdeLauncher.bootClassLoadersAndMain(IdeLauncher.java: 189) at oracle.ide.boot.IdeLauncher.launchImpl(IdeLauncher.java:89) at oracle.ide.boot.IdeLauncher.launch(IdeLauncher.java:65) at oracle.ide.boot.IdeLauncher.main(IdeLauncher.java:54) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at oracle.ide.boot.Launcher.invokeMain(Launcher.java:713) at oracle.ide.boot.Launcher.launchImpl(Launcher.java:115) at oracle.ide.boot.Launcher.launch(Launcher.java:68) at oracle.ide.boot.Launcher.main(Launcher.java:57)
看着异常就不爽啊,解决呗。运行命令行窗口查看是否设置了JDK系统环境变量,这里显然是没有设置JDK系统环境变量:
设置系统环境变量
在桌面选中“计算机”右键选择“属性”,单击“高级系统设置”:
在高级选项卡中单击“环境变量”:
在系统变量下单击“新建”,填入变量名“JAVA_HOME”,变量值为JDK的安装目录,我这里为“ D:\JAVAEEServiceInstall\Java\jrockit-jdk1.6.0_37-R28.2.5-4.1.0 ”,单击“确定”:
在系统变量中找到“Path”,单击“编辑”,在变量值中加入“%JAVA_HOME%\bin”以“;”相隔,单击“确定”:
系统环境变量设置完成后,重新启动命令行窗口,检查是否成功。如下为设置成功:
重新单击操作系统菜单中的“SQL Developer”,这时“SQL Developer”可以正常启动:
如果希望不出现“[WARN ][jrockit] MaxPermSize=128M ignored: Not a valid option for JRockit”警告,那用记事本打开SQL Developer的bin目录下的“sqldeveloper.bat”文件,找到“-XX:MaxPermSize=128M”直接删除。因为jrockit已经不需要-XX:MaxPermSize这样的参数了。
注:1.JDK一定要是1.6版本的即U6版本。
2.发现SQL_developer还是会一闪而过,但是SQL_developerW可以方面使用。
3.Oracle SQL Developer 添加SQLServer 和Sybase 连接
1. 开始只有oracle 和access 连接
\
喎?"/kf/ware/vc/" target="_blank" class="keylink"vcD4KPHA+CjxzdHJvbmc+Mi4gtPK/qk9yYWNsZSBTUUwgRGV2ZWxvcGVyo7o8L3N0cm9uZz48L3A+CjxwPgo8c3Ryb25nPrmkvt+hqqGqPHN0cm9uZz4mZ3Q7PC9zdHJvbmc+ytfRoc/uoaqhqjxzdHJvbmc+Jmd0Ozwvc3Ryb25nPsr9vt2/4qGqoaomZ3Q7tdrI/be9SkRCQ8f9tq+zzNDyoaqhqiZndDvM7bzTx/22r8z1xL88L3N0cm9uZz48YnI+CjwvcD4KPHA+CjxpbWcgc3JjPQ=="/uploadfile/Collfiles/20160421/20160421091223242.jpg" alt="\"
\
3. 自动加载到目录,JTDS.jar 下载后就到放这里。
(我的路径:C:\Documents and Settings\Administrator\Application Data\SQL Developer\)
我的JTDS.jar免费下载地址:
\
4. 完成后添加连接有SQLServer 和Sybase了。
\
---------------------------------------------------------------------------------
---------------------------------------------------------------------------------
还有一种添加方法是:
1. 帮助——检查更新
\
2. 选择可更新的相关软件查件
\
3. 单击下一步自动更新,则出现下列详细插件,选取JTDS JDBC Driver……
\
\
4. 填写在官方网址上的账户信息,确定。
\
4.sqlserver 转oracle
上一次,我使用手工转换SQL脚本的方式进行数据库的迁移,其间过程相当繁琐,特别是标识符长度的限制让我焦头烂额,因为我们的系统中长标识符真是多如繁星,另外,表结构建好之后,数据的迁移又是一个相当复杂的过程,因为修改了不少的表名,需要把导出的数据和表一一对应上。
但是,除了手工的方式之外,其实我们还有更为简便和自动化的解决方案,那就是ORACLE官方提供的Sql Developer自带的Oracle Migration Workbench。
什么是Oracle SQL Developer?在官方页面上,是这样介绍它的:
Oracle SQL Developer is a free and fully supported graphical tool for database development. With SQL Developer, you can browse database objects, run SQL statements and SQL scripts, and edit and debug PL/SQL statements. You can also run any number of provided reports, as well as create and save your own. SQL Developer enhances productivity and simplifies your database development tasks .
另外,通过第三方驱动包,该工具还支持连接和管理各种主流数据库服务器。
下面就把我使用这个工具迁移Microsoft SQL Server 2008数据库到Oracle 11G的过程记录下来,为了积累也为分享。
第一部分:获取工具
第二部分:建立资料档案库(Migration Repository)
第三部分:数据库移植向导
第四部分:SqlServer中的架构到Oracle中的模式,名称的处理
第五部分:转移数据
第六部分:存储过程和函数
首先,当然是获得工具,该工具在Oracle Sql Developer官方下载页面里面可以直接下载到。Windows 32位直连地址:Windows 32bit Sql Developer。Oracle Sql Developer需要JDK的支持,在下载页面中提供了包含JDK的下载包,还有支持各种操作系统的下载选项。
下载后,解压到任意位置。直接运行程序。第一次运行,需要指定JDK的目录。
启动后,我们要做的第一件事,不干别的,先下载SQL SERVER的驱动程序。点击菜单帮助,选择检查更新,弹出检查更新向导窗口,第一页一般是废话,直接下一步,等更新中心列表加载完毕后,只选择“Third Party SQL Developer extensions”,点击下一步,等待更新搜索完毕后,中列表中找到并选中 JTDS JDBC Driver,如下图:
image
下一步,在许可协议页面,点击“我同意”按钮后再点下一步,等下载完毕后关闭窗口,弹出提示需要重启程序才能完成更新,点击“是”。等程序重启完毕。
环境准备完毕,开始进入到正题移植数据库。
建立资料档案库(Migration Repository)
一、连接到Oracle
在程序左边的连接窗口中,点击加号按钮,添加一个到Oracle数据库的dba连接,如下图:
image
配置完成后,点击连接按钮,连接到数据库。
二,建立用户
打开到Oracle数据的连接,新建一个用户,我们要在该用户的模式中建立所谓的“资料档案库”,并使用该用户去建立SQL Server移植后的用户名,以及做其它的一些工作。按照帮助中的说明,这个用户最少需要以下权限和角色:
Roles
CONNECT WITH ADMIN OPTION,RESOURCE WITH ADMIN OPTION
Privileges
ALTER ANY ROLE,ALTER ANY SEQUENCE,ALTER ANY TABLE,ALTER TABLESPACE,ALTER ANY TRIGGER,COMMENT ANY TABLE,CREATE ANY SEQUENCE,CREATE ANY TABLE,CREATE ANY TRIGGER,CREATE VIEW WITH ADMIN OPTION,CREATE PUBLIC SYNONYM WITH ADMIN OPTION,CREATE ROLE
CREATE USER,DROP ANY SEQUENCE,DROP ANY TABLE,DROP ANY TRIGGER,DROP USER,DROP ANY ROLE,GRANT ANY ROLE,INSERT ANY TABLE,SELECT ANY TABLE,UPDATE ANY TABLE
以下语句直接建立一个名为migrations的用户:
-- Create the user
create user MIGRATIONS
identified by MIGRATIONS
default tablespace USERS
temporary tablespace TEMP
profile DEFAULT;
-- Grant/Revoke role privileges
grant connect to MIGRATIONS with admin option;
grant resource to MIGRATIONS with admin option;
-- Grant/Revoke system privileges
grant alter any role to MIGRATIONS;
grant alter any sequence to MIGRATIONS;
grant alter any table to MIGRATIONS;
grant alter any trigger to MIGRATIONS;
grant alter tablespace to MIGRATIONS;
grant comment any table to MIGRATIONS;
grant create any sequence to MIGRATIONS;
grant create any table to MIGRATIONS;
grant create any trigger to MIGRATIONS;
grant create any view to MIGRATIONS;
grant create materialized view to MIGRATIONS with admin option;
grant create public synonym to MIGRATIONS with admin option;
grant create role to MIGRATIONS;
grant create session to MIGRATIONS with admin option;
grant create synonym to MIGRATIONS with admin option;
grant create tablespace to MIGRATIONS;
grant create user to MIGRATIONS;
grant create view to MIGRATIONS with admin option;
grant drop any role to MIGRATIONS;
grant drop any sequence to MIGRATIONS;
grant drop any table to MIGRATIONS;
grant drop any trigger to MIGRATIONS;
grant drop tablespace to MIGRATIONS;
grant drop user to MIGRATIONS;
grant grant any role to MIGRATIONS;
grant insert any table to MIGRATIONS;
grant select any table to MIGRATIONS;
grant unlimited tablespace to MIGRATIONS with admin option;
grant update any table to MIGRATIONS;
再次点击连接中的加号按钮,添加一个使用刚刚新建立的用户的连接。
image
连接后,在该连接上点击右键,选择移植资料档案库-关联移植资料档案库,程序会在该用户下建立移植资料档案库所需要的表、存储过程等等,弹出一个对话框显示当前建立的进度,稍等片刻即建立完毕。
数据库移植向导
一,建立到源SqlServer数据库的连接
在连接窗口中,点击绿色加号按钮,打开连接配置窗口,按下图建立到SqlServer的连接:
image
因为动态商品的使用,使得原来SqlServer配置页中默认的1433往往没有办法连接到SqlServer2008数据库,修改为1434即可。
二、启动数据库移植向导
建立到SqlServer的连接后,开始对数据库进行移植。有两个地方可以启动数据库移植向导,一个是在新建的SqlServer连接上点击右键,选择移植到Oracle,另一个是在菜单工具-移植-移植,启动向导后,第一页当然是向导的简介,通过简介,我们可以知道整个移植过程有7步,并且有两个先决条件,如下图:
image
直接点击下一步。
三、选择资料档案库
在这个页面中,我们也可以去建立连接和资料档案库,也就是前一部分中我们所做的工作在这里也可以进行。当然选择我们刚刚建立的migrations连接,如下图:
image
这里截断的意思是将资料档案库清空,我们建立一个移植项目后,所有抓取的数据库结构信息、统计信息还有转换记录等都保存在这个资料档案库中,只要项目名称不同,即使不清空资料档案库也不会影响到移植工作。当然,如果希望更“清爽”一点,也可以勾选。这是后话。
四、为转换项目命名
选择好资料档案库后,点击下一步,为我们的转换项目输入名称和备注,以便识别。另外,还需要指定脚本生成目录,用于存放向导执行过程中生成的脚本。
五、选择源数据库连接
然后继续下一步,选择源数据库,在这里有联机和离线两种模式,联机即是直接连接到源数据进行抓取,而离线则是在SqlDeveloper不直接连接到源数据库的情况下,通过SqlDeveloper提供的脚本预先捕获数据库,得到数据库结构文件后,通过向导导入。
这里当然是选择我们刚才建立的SqlServer连接。
六、选择捕获源数据库
当我们建立了Oracle数据库后,必须合理地配置监听程序和网络服务名后,客户应用才能访问我们的数据库。所以服务器端必须配置监听程序,而网络服务名在客户端跟服务器端都可以配置。看如下说明:
1。服务器端的监听程序用于接收客户端的连接请求。
在建立了Oracle数据库之后,为了使得客户应用可以访问特定数据库,必须要在监听程序中追加该数据库。一个监听程序可以监听多个Oracle数据库,多个监听程序也可以监听同一个数据库。但是监听程序只能用于同一台服务器上的Oracle数据库。安装了Oracle时,会自动建立默认的监听程序LISTENER.一般只需要将需要使用的数据库追加到这个监听程序上就可以了。
监听程序使用的默认端口为1521
保存了监听程序配置之后,必须要重新启动监听程序才能生效。windows中可以在“服务”中重新启动。
例如:假如我在10.150.27.45上装了ORACLE服务器,端口是1521,为了让其他客户端应用(不管是本地的还是其他的)可以访问我的名为TESTDB的数据库,首先得在服务器上配置监听器:进入NET MANAGER 新建一个端口,如命名为LISTENER,配置主机名:如10.150.27.45和端口1521,配置全局数据库名:如TESTDB,然后保存就好了
2。客户端需要配置网络服务名,应用程序使用网络服务名才能访问Oracle数据库, 一般使用数据库名作为服务名。注意: 网络协议要与监听程序的一致(如TCP/IP)
例如:假如我在10.150.27.46上装了ORACLE客户端,进入NET MANAGER,新建一服务命名,如:TEST,然后配置你要连接的DB服务器名字和端口好,如:10.150.27.45, 1521,配置服务名,必须跟监听端口的全局数据库名一样:如TESTDB,然后你可以通过输入用户名和密码测试连接成不成功了
3。利用客户端工具测试
在10.150.27.46上通过SQLPLUS连接10.150.27.45上的DB:TESTDB, 输入用户名密码,HOST STRING输入TEST,看连接是不是成功
经过以上分析,你是不是明白ORACLE 的 NET MANAGER是怎么一回事了呢?