最近刚换了一家新公司,使用的数据库是oracle, 因为以前用的是mysql类的数据库,对oracle完全不熟,完全是小白级别,有mysql开发经验的开发人员上手oracle还是很快的,但是有mysql运维经验的人员上手oracle是痛苦的,下面我就介绍下我的oracle踩坑之路。
登录方式
- 管理员登录
$ sqlplus sys as sysdba
在这里不需要输入密码,登录进去提示密码
- 普通用户登录
$ sqlplus scott/123 //不指定实例 $ sqlplus scott/123@orcl //指定实例
- 在oracle客户端登录orale的方法
sqlplus scott/123@//192.168.94.133/orcl //192.168.94.133是服务端的IP地址
配置方式
mysql可通过一个配置文件my.cnf 管理所有的配置,而oracle则有多个配置文件
- listener.ora:和数据库服务器端相关,是listener监听器进程的配置文件,接受远程对数据库的接入申请并转交给oracle的服务器进程。
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) )
- tnsnames.ora:用户配置连接数据库的别名参数,就像系统中的hosts文件一样,这个我在配置 data guard有用到
EE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.33)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =cc) ) )
- sqlnet.ora:该文件是控制客户端访问数据库服务器的,可以设定多种参数进行访问控制,暂时没用到,这里就不提及了
备份方式
与mysqldump不同的是,oracle备份工具rman有自己的命令行,可以用来备份和恢复数据库文件、归档日志、控制文件、系统参数文件,也可以用来执行完全或不完全的数据库恢复。
- 使用方式:
rman target scott/123@server
监听服务lsnrctl
需要设置开机启动,否则每次启动都需要手动开启
- 启动监听器
lsnrctl start
- 关闭监听器
lsnrctl stop
- 显示监听器的状态。status命令显示监听器是不是活动的,日志与跟踪文件的位置,监听器已经持续运行了多长时间,以及监听器所监听的任务。
lsnrct status