1.在VMware中新建一个虚拟机

(1)新建虚拟机,选择自定义(高级),点击下一步; (2)保持默认选项,点击下一步;

cmd查看oracle数据库_cmd连接oracle数据库_怎么在cmd中连接oracle

(3)选择稍后要安装的操作系统,点击下一步; (4)客户端操作系统选择Microsoft Windows,版本选择Windows XP Professional(注意要和后面安装的Windows版本对应),点击下一步;

cmd查看oracle数据库_cmd连接oracle数据库_怎么在cmd中连接oracle

(5)保持虚拟机默认名称,位置选择C:LastestSoftwareVMsXPWindows(此目录为自己创建,用于保存新建的虚拟机)cmd连接oracle数据库,点击下一步;

(6)保持默认设置,点击下一步;

cmd连接oracle数据库_cmd查看oracle数据库_怎么在cmd中连接oracle

(7)虚拟机内存设置稍微大一点,这样运行速度会快一些,设置为2G,点击下一步;

(8)网络类型依然选择使用host-only模式网络,点击下一步;

cmd查看oracle数据库_怎么在cmd中连接oracle_cmd连接oracle数据库

(9) SCSI控制器cmd连接oracle数据库,保持默认设置,点击下一步; (10)虚拟磁盘类型,保持默认设置,点击下一步;

cmd查看oracle数据库_怎么在cmd中连接oracle_cmd连接oracle数据库

(11)在磁盘界面,选择新建一个虚拟磁盘,点击下一步; (12) 最大磁盘大小保持默认值40.0GGB,点击下一步;

cmd连接oracle数据库_cmd查看oracle数据库_怎么在cmd中连接oracle

(13)磁盘文件界面,保持默认,点击下一步; (14)准备创建虚拟机界面,点击完成,至此,虚拟机创建完毕;

cmd连接oracle数据库_怎么在cmd中连接oracle_cmd查看oracle数据库

2.安装Windows XP Professional操作系统

之前已经在VMWare中创建了虚拟机,接下来要在虚拟机中安装WindowsXP Professional操作系统。 这个安装过程比较简单,和我们平时在自己的电脑上安装Windows操作系统类似,这里就不再介绍了。

3、安装Oracle数据库

此处使用的 Oracle 数据库版本是适用于 Microsoft Windows(32 位)的 10g 第 2 版 (10.2)。 将Oracle数据库安装包复制到WindowsXP系统,解压后进入数据库目录,双击setup可执行程序,开始Oracle数据库的安装过程,如下图:

怎么在cmd中连接oracle_cmd连接oracle数据库_cmd查看oracle数据库

(1) 启动Oracle安装向导后,可以看到如下图所示的界面,输入两次密码:password,点击下一步。 从图中可以看出,Oracle数据库版是企业版,功能比较全面; 默认勾选create and start the database,这样安装oracle数据库后,会自动创建对应的数据库,可以用于编程测试; 默认创建的数据库名称是orcl。 在该界面中需要为orcl数据库管理员设置相应的密码,这里设置为password; 管理员的用户名为 sys。 在Oracle中,管理员的用户名默认为sys。 相对于用户system一般来说sys有更大的权限,类似于群主(sys,数据库的拥有者,就像微信群的创建者)和管理员(system,数据库的管理员,就像微信群的管理员一样)。

cmd连接oracle数据库_cmd查看oracle数据库_怎么在cmd中连接oracle

(2) 安装向导程序检查大约一分钟后,弹出如下界面,这里我们需要确认网络配置,勾选正在检查网络配置要求,然后点击下一步;

cmd查看oracle数据库_cmd连接oracle数据库_怎么在cmd中连接oracle

(3) 接下来会看到如下图所示的界面,点击安装即可。

cmd查看oracle数据库_怎么在cmd中连接oracle_cmd连接oracle数据库

(4)稍等片刻,可以看到如下图的界面,说明Oracle数据库已经安装完成;

cmd连接oracle数据库_怎么在cmd中连接oracle_cmd查看oracle数据库

(5) 点击密码管理,可以看到如下图所示的界面。 其中employee表和department表数据目前锁定在SCOTT用户下,去掉勾选,设置新密码为tiger; 同时SH用户下还有一个订单表数据,去掉勾选,设置新密码为sh,点击确定;

cmd查看oracle数据库_怎么在cmd中连接oracle_cmd连接oracle数据库

(6) 现在回到数据库创建完成界面,然后点击确定,可以看到如下图所示的界面,表面Oracle数据库安装完成,点击退出即可。

(7)等待一段时间后,Oracle会自动打开一个网页,弹出下图所示界面(即Oracle图形化管理界面)。 也可以在本地Windows系统浏览器输入:1158/em进入该界面;

(8)输入用户名sys,输入密码password,选择连接身份为SYSDBA,点击登录,即可看到如下图所示界面;

怎么在cmd中连接oracle_cmd连接oracle数据库_cmd查看oracle数据库

(9) 点击我同意按钮,可以看到如下图所示的界面;

(10)点击左上角的管理,然后点击数据库对象下的表,可以看到如下图的界面;

cmd连接oracle数据库_怎么在cmd中连接oracle_cmd查看oracle数据库

(11)在scheme中输入SCOTT,点击start,可以看到如下图界面(搜索到DEPT部门表和EMP员工表);

怎么在cmd中连接oracle_cmd查看oracle数据库_cmd连接oracle数据库

(12)然后在plan中输入SH,点击start,可以看到如下图的界面(搜索出SALES订单表);

怎么在cmd中连接oracle_cmd查看oracle数据库_cmd连接oracle数据库

至此,Oracle数据库的安装介绍完毕。 下面简单介绍一下Oracle数据库的一些基本操作。

4.Oracle sqlplus的基本操作

生产环境中的db不能直接使用开发工具(如TOAD、PL/SQL Developer)连接进行数据操作,因为有非常严格的权限控制(这是为了db安全),而且只有一个开发者可以使用的方式是通过SSTHerm工具登录dbserver,然后通过sqlplus以指定的受限用户名登录,然后进行操作。 习惯了使用开发工具的方便,第一次回到sqlplus不习惯,但是只要设置一些简单的参数,sqlplus的易用性可以大大提高。

另外,经常需要将db中的数据导出到文件中。 默认情况下,导出的文件中会有很多垃圾信息,需要去除。 这时候相关的设置就非常有用了。 下面结合实际操作介绍Oracle数据库的一些常用命令。

(1)连接Oracle数据库:sqlplus scott/tiger; 查看当前用户:showuser; 查看当前用户创建的所有表:select*from tab; 运行结果如下图所示:

cmd连接oracle数据库_cmd查看oracle数据库_怎么在cmd中连接oracle

(2)清屏:hostcls; 切换到 sh 用户:connsh/sh; 查看当前用户:showuser; 查看当前用户创建的所有表:select* from tab; tab是一个数据字典,包括了当前用户的所有表,运行结果如下图所示:

怎么在cmd中连接oracle_cmd连接oracle数据库_cmd查看oracle数据库

(3)查看Oracle中创建了哪些用户:select username from dba_users;

怎么在cmd中连接oracle_cmd连接oracle数据库_cmd查看oracle数据库

(4)设置sqlplus模式-显示行宽(一行显示的最大字符数),查看当前linesize宽度:showlinesize; 设置线宽:setlinesize 300; 运行结果如下图所示,可以看到当linesize从80到300时,同一行显示的字数增加了,查询结果占用的行数也减少了;

怎么在cmd中连接oracle_cmd连接oracle数据库_cmd查看oracle数据库

(5)显示emp表的结构信息:descemp;

cmd查看oracle数据库_怎么在cmd中连接oracle_cmd连接oracle数据库

(6)执行一个SQL脚本文件:start file_name或@file_name;

这个命令非常有用。 在生产环境中,可以将多条sql语句保存在一个文本文件中,这样当你想执行这个文件中的所有sql语句时,直接使用这个命令即可,类似于DOS中的批处理。 举例如下:

在C:Documents and SettingsAdministrator目录下,编写了一个简单的test.sql脚本文件,内容如下图所示:

cmd查看oracle数据库_cmd连接oracle数据库_怎么在cmd中连接oracle

然后在sqlplus中分别执行start test.sql和@test.sql,运行结果如下图所示:

cmd连接oracle数据库_cmd查看oracle数据库_怎么在cmd中连接oracle

(7)设置sqlplus模式——显示总行数(当前连接有效,一个查询结果页显示的最大行数,包括显示的分界线和空白行),查看当前pagesize:showpagesize; 将页面大小设置为 300:setpagesize 300; 运行结果如下图所示。 可以看出,当pagesize从14变为100时,查询结果页面显示的行数增加,查询结果不再换页;

(8)sqlplus的优化主要通过两种方式进行:一是通过set操作实现系统参数设置(可以用show查看配置项,showall可以查看所有系统参数设置列表),比如setlinesize 120; 二、显示格式设置通过列操作实现,如altersome_column formata32; Session参数的设置是通过SQL操作实现的,比如alter sessionset….

(9) 下面介绍一些其他常用的sqlplus设置参数列表。 更全面的set集合请参考oracle官方文档:

nset feedback on/off //设置是否显示“xx line selected”字符串

nsetheading on/off //设置是否显示列名

nsettime on/off //设置是否显示当前系统时间

nsettinging on/off //设置是否显示每条SQL执行消耗的时间

nsettermout on/off //设置执行sql文件时是否在控制台打印相关信息

nsettrimout on/off //设置是否去掉每行标准输出的尾随空格

nsettrimspool on/off //设置是否去掉spool输出文件中每一行的尾部空格

(10) 显示格式的设置主要由column命令完成,其语法为:columncolumnName [format格式][heading标题],如columnlogin_id格式a32标题QQID,其中headingQQID表示login_id字段的名称在结果集中显示为:QQID,该函数与select login_id as QQID from …相同;

(11) Session参数的设置非常专业和复杂,一般开发者不会涉及,但是有两个参数通常可以自己设置:一个是设置日期时间字段的显示格式,执行下面在 sqlplus 中执行命令即可:

altersession set nls_date_format='yyyy-mm-dd hh24:mi:ss'

二是设置当前session的字符编码(每个DB的编码都会不同),这样就可以显示中文了,比如执行如下命令:

alter session set nls_lang='AMERICAN_AMERICA.ZHS16GBK'

当然,这两个参数也可以直接放在当前OS用户的环境变量中,这样就不用每次进入sqlplus都重复上面的命令,就方便多了。

五、Oracle数据库的基本操作

一、Oracle数据库的基本操作

(1)创建数据库:createdatabase mystudenttable;

(2)删除数据库:dropdatabase mystudenttable;

(3) 备份数据

n完整备份:expscott/tiger@orcl buffer=1024 file=c:back.dmp full=y

scott:用户名 tiger:密码 buffer:缓存大小 file:具体备份文件地址

full:是否导出所有文件 ignore:忽略错误,如果表已经存在,也覆盖

n导出数据库中system用户和sys用户的表:expscott/tiger@orcl file=c:backup1.dmp owner=(system,sys)

n导出指定表:expscott/tiger@orcl file=c:backup2.dmp tables=(teachers, students)

n备份远程服务器的数据库:exp用户名/密码@远程IP:端口/实例文件=存放位置:文件名.dmp full=y

(4)数据库恢复:打开cmd,直接执行以下命令,无需再次登录sqlplus;

n完全恢复:impscott/tiger@orcl file=c:back.dmp full=y ignore=y log=c:implog.txt; 指定日志很重要,便于分析和修复错误;

n导入指定表:imp scott/tiger@orcl file=c:backup2.dmp tables=(teachers,students)

n 恢复到远程服务器:imp 用户名/密码@远程IP:端口/实例文件=存放位置:文件名.dmp full=y

B. Oracletable的基本操作

(1) 创建表:createtable tablename(col1 type1 [not null] [主键], col2 type2 [not null], …);

基于现有表创建新表:select * into table_new from table_old(使用旧表创建新表); createtable table_new as select col1,col2,… 仅来自 tab_old 定义

(2)删除表:droptable tablename;

(3)重命名表:altertable tablename rename to new_tablename;

(4) 添加字段:altertable tablename add(字段名字段类型默认值是否为空);

(5)修改字段:altertable tablename modify(字段名字段类型默认值是否为空);

(6)重命名字段:altertable tablename rename column 列名为新的列名

(7)删除字段:altertable tablename drop column字段名;

(8) 添加主键:altertable tablename add primary key(col);

(9)删除主键:altertable tablename drop primary key(col);

(10) 创建索引:create[unique] index indexname on tablename(col1,…);

(11)删除索引:dropindex indexname; 注意索引是不能更改的,如果要更改,必须先删除再重建;

(12)创建视图:createview viewname as select语句;

(13)删除视图:dropview viewname;

C. Oracle数据基本操作

(1) 查询数据:select from [where] [order by [asc or desc]];

(2) 插入数据:insert into table name values(所有列的值); 或插入表名(列)值(对应值);

(3)更新数据:update table set column = new value [where condition] –> 更新满足条件的记录; update table set column = new value –> 更新所有数据;

(4)删除数据:delete from table name where condition –> 删除满足条件的记录; delete from tablename –> 删除表中的所有数据; 犯罪; –> 提交数据; 回滚; –> 回滚数据; delete模式可以恢复删除的数据,但是提交后就没有办法了; delete删除的时候会记录日志,所以删除很慢;

(5) 可截断的表名; 删除所有数据不会影响表结构,不会记录日志,数据无法恢复,所以删除速度非常快;

(6) 可删除表名; 删除所有数据,包括表结构,不会记录日志,数据无法恢复,所以删除速度也很快;

(7) 数据复制

n 表数据复制:insert into table1(select * from table2);

n 拷贝表结构:createtable table1 select * from table2 where 1>1;

n 复制表结构和数据:createtable table1 select * from table2;

n复制指定字段:createtable table1 as select id,name fromtable2 where 1>1;

D.数据库复制命令

不同的数据库有不同的语法(以SQLServer和Oracle为例),复制包括目标表已经存在和目标表不存在两种情况:

SQLServer中,如果目标表已经存在:insert into target table select* from original table;

SQLServer中,如果目标表不存在: select * into the target table from original table; (,复制表结构和数据,如果后面加上where 1=0的条件,则只复制表结构);

Oracle中,如果目标表已经存在:insert into target table select* from original table; 犯罪;

Oracle中,如果目标表不存在:createtable target table as select * from the original table; (复制表结构和数据,后面如果加上where1=0条件,指的是复制表结构)。

参考:

——《CSDN其他博文》

——《潭洲大数据课件》