oracle入门
Oracle入门
由于工作需要,在本机搭建了Oracle,并使用Navicat图形化操作管理,期间遇到了好些问题,对于刚入坑的人来说,可能会花比较长的去百度查找资料来解决这些问题。这里将演示使用sqlplus和Navicat操作Oracle数据库。
使用入门
Oracle在使用上还是跟Mysql这些差不多的,Oracle在命令行使用sqlplus命令来进行操作,安装Oracle就不在这里详细说了,直接开始使用Oracle时,先要知道一点,因为Oracle占用比较高,所以一台电脑基本上只建一个数据库。Oracle可以通过用户来实现多个数据库,因为每个用户都有自己的模式,也就可以当做是一个用户一个库,当一个用户需要访问其他用户的数据库时,就需要权限了。刚安装完数据库,我们可以通过命令行来完成用户的创建和授权。在命令行输入sqlplus / as sysdba
来以管理员身份登录到Oracle数据库中。接着看下面代码块来创建用户和为用户授权。
1 |
|
Navicat连接Oracle
在使用Navicat连接Oracle之前,需要对应版本的oci环境。我们能够从Oracle的官网上直接下载到instantclient-basic-windows.x64-19.6.0.0.0dbru.zip
下载完成之后在Navicat的工具->选项->环境中的OCI环境中指向下载好的dll文件即可。
如果测试连接时,报了TNS什么的错,就重启一下OracleOraDB19Home1TNSListener
这个服务,如果还是不行就从sqlplus登录sysdba看看是不是登陆了空闲例程。如果登录了空闲例程,则使用startup
看看能不能将oracle启动起来。
无法正常启动Oracle
当时我这里是因为将sga_max值调到500m导致oracle无法正常启动了。这种情况下需要以pfile来启动,先以sysdba
登录,然后通过命令创建出pfile文件,create pfile='$ORACLE_HOME/dbs/spfileorcl_bak.ora' from spfile;
然后我们打开文件,将文件中的sga_max_size的值改到2G,再将sga_target的值改成1G,这样就能够正常运行起来了。当时由于占用过高,在百度找到相关的解决办法后,没有理解清楚就执行了命令,导致sga_max_size小于了sga_target值,所以数据库就启动不起来了。
1 |
|
修改完文件后,我们可以通过startup pfile=‘$(这里填写你的pfile文件路径)’
就可以看到数据库启动起来了。但是这样子只是本次启动起来了,重新启动计算机之后,数据库仍然是使用spfile的配置进行启动的,因为spfile的优先级高于pfile。所以我们可以通过create spfile from pfile='C:/app/Administrator/product/11.2.0/dbhome_1/dbs/spfileorcl_bak.ora';
命令来从pfile配置中创建spfile的配置。当然,在执行这条命令之前,我们需要将数据库先关掉,使用shutdown immediate
命令来关闭数据库。
到这里,体验数据库的坑就填完了,至于其他的坑,目前还没有体验过,希望以后能踩更多的坑,从填坑中汲取经验,不断成长。