Forked from alexishida/rails-oracle-client-19-linux.txt
Created
November 8, 2020 22:58
-
-
Save flaugabriel/1f63880e6c72677dcc639834753da0fa to your computer and use it in GitHub Desktop.
Rails Oracle Client 19 Linux
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Version 19.5.0.0.0 | |
# Instalar a biblioteca | |
sudo apt-get install libaio1 | |
# Criar a pasta | |
sudo mkdir /opt/oracle | |
# Mover para /opt/oracle | |
instantclient-basic-linux.x64-19.5.0.0.0dbru.zip | |
instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip | |
# Extrair para /opt/oracle | |
unzip instantclient-basic-linux.x64-19.5.0.0.0dbru.zip | |
unzip instantclient-sdk-linux.x64-19.5.0.0.0dbru.zip | |
# Criar o link simbolico da lib | |
cd /opt/oracle/instantclient_19_5 | |
ln -s libclntsh.so.19.1 libclntsh.so | |
ln -s libocci.so.19.1 libocci.so | |
# Manter versões legadas | |
ln -s /opt/oracle/instantclient_19_5 /opt/oracle/instantclient_12_2 | |
# Configurando LD | |
sudo sh -c "echo /opt/oracle/instantclient_19_5 > /etc/ld.so.conf.d/oracle-instantclient.conf" | |
sudo ldconfig | |
# Exporta as variaveis abaixo .bashrc .zshrc: | |
export LD_LIBRARY_PATH=/opt/oracle/instantclient_19_5:$LD_LIBRARY_PATH | |
export PATH=/opt/oracle/instantclient_19_5:$PATH | |
# Criando o projeto no Rails | |
rails new projeto -d oracle | |
# Adiciona no Gemfile | |
gem 'activerecord-oracle_enhanced-adapter' | |
gem 'ruby-oci8' | |
# Instalando as gems | |
bundle install | |
# colocar no config/boot.rb | |
ENV['LD_LIBRARY_PATH'] ||= '/opt/oracle/instantclient_19_5' | |
ENV['NLS_LANG'] = 'BRAZILIAN PORTUGUESE_BRAZIL.AL32UTF8' | |
# JAVA_HOME | |
JAVA_HOME=/opt/oracle/jdk1.8.0_251 | |
export JAVA_HOME | |
export PATH=$JAVA_HOME/bin:$PATH | |
# Criar um arquivo config/initializers/oracle.rb e inserir o código | |
ActiveSupport.on_load(:active_record) do | |
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.class_eval do | |
# true and false will be stored as 'Y' and 'N' | |
self.emulate_booleans_from_strings = true | |
# start primary key sequences from 1 (and not 10000) and take just one next value in each session | |
self.default_sequence_start_value = "1 NOCACHE INCREMENT BY 1" | |
# Use old visitor for Oracle 12c database | |
self.use_old_oracle_visitor = false | |
# other settings ... | |
# ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.default_tablespaces = | |
# {:clob => 'TSLOBS', :blob => 'TSLOBS', :index => 'TSINDEXES', :table => 'TSTABLES'} | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment