Presentation is loading. Please wait.

Presentation is loading. Please wait.

The ruby-oci8 gem and legacy Oracle database Oracle!!!!

Similar presentations


Presentation on theme: "The ruby-oci8 gem and legacy Oracle database Oracle!!!!"— Presentation transcript:

1 The ruby-oci8 gem and legacy Oracle database Oracle!!!!

2 EZ DC Application Existing Java application with Oracle 11gR2 data store Collect data about peer reviews Number of attendees Length of meeting Number of defects found Action items Replaces individual Word document for each review Provides the ability to create and publish reports

3

4

5

6 EZDC Admin Application Missing admin functionality Adding, deleting, updating users Adding new contracts Implementing changes to peer reviews Delete tickets from releases Reasons for creating a separate application No budget for expanding the EZ DC app Simpler to implement security The Geniuses In Disguise™ need practice with Rails

7 Hey kids! Let’s put on a show! build a Rails app!

8 Architecture Oracle DB EZ DC Admin EZ DC Project User Admin User

9

10

11 Ch-ch-changes Adjustments to “The Rails Way” to use the legacy Oracle database Communicating with Oracle We’ll be back

12 The Rails Part is the Easy Part Gems ruby-oci8 (http://ruby-oci8.rubyforge.org/en/) activerecord-oracle_enhanced-adapter (https://github.com/rsim/oracle-enhanced) https://github.com/rsim/oracle-enhanced database.yml user.rb (for example)

13 Gemfile source 'https://rubygems.org' gem 'rails', '3.2.13' gem 'bootstrap-sass' # To use ActiveModel has_secure_password # gem 'bcrypt-ruby' group :development, :test do gem 'ruby-oci8', '2.1.5' gem 'ruby-oci8', '2.1.5' gem 'activerecord-oracle_enhanced-adapter', '1.4.1’ gem 'activerecord-oracle_enhanced-adapter', '1.4.1’end

14 database.yml # Oracle/OCI 8i, 9, 10g # Requires Ruby/OCI8: # # # for database running in localhost with application # database: /xe # for database running in a separate VM from application # > / xe development: adapter: oracle_enhanced adapter: oracle_enhanced database: :1521/xe database: :1521/xe username: > username: > password: > password: >

15 user.rb # == Schema Information # Table name: cmmi_user # cmmi_user_id :integer not null, primary key class User < ActiveRecord::Base # specify schema and table name # specify schema and table name self.table_name = 'cmmi_user' self.table_name = 'cmmi_user' # specify primary key name # specify primary key name self.primary_key = 'cmmi_user_id' self.primary_key = 'cmmi_user_id' # specify sequence name # specify sequence name self.sequence_name = 'cmmi_user_id_seq' self.sequence_name = 'cmmi_user_id_seq'

16 Rails to Oracle Comm Path ruby- oci8 activerecord- oracle_enhanced- adapter Oracle Instant Client Oracle 11gR2 Database

17 Oracle Instant Client Download and unzip the required packages: Oracle Instant Client Package – Basic Lite Oracle Instant Client Package – SQL*Plus Oracle Instant Client Package – SDK (optional) Create a symbolic link to the instant client library: $ sudo ln -s libclntsh.so.11.1 libclntsh.so Set the library search path: LD_Library_Path on Linux DYLD_Library_Path on Mac OS X

18 VM Static IP Using a virtual machine with IP address assigned dynamically by DHCP at startup Fix a static IP address by modifying VM config file: /Library/Preferences/VMware Fusion/vmnet8/dhcpd.conf ####### VMNET DHCP Configuration. End of "DO NOT MODIFY SECTION" ####### host Windows_8_x64_100GB { hardware ethernet 00:0C:29:D4:60:40; hardware ethernet 00:0C:29:D4:60:40; fixed-address ; fixed-address ;}

19 References ruby-oci8 activerecord-oracle_enhanced-adapter https://github.com/rsim/oracle-enhanced DHCP on VMware Fusion Oracle Instant Client client/index html?ssSourceSiteId=ocomen client/index html?ssSourceSiteId=ocomen Environment Variables https://help.ubuntu.com/community/EnvironmentVariables https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/366728

20 Questions ?


Download ppt "The ruby-oci8 gem and legacy Oracle database Oracle!!!!"

Similar presentations


Ads by Google