Oracle 12c et Debian
Rédigé par gorki Aucun commentaireLe problème :
Après mon article "C'est galère d'installer Oracle XE sur windows 7 64 bits. Parfois ça marche, parfois ça marche pas." Je me suis décidé à utiliser une autre distribution non supportée pour installer Oracle.
Si, si...
Bon après CentOS c'est bien aussi (y'a pas fail2ban par défaut mais c'est bien quand même.).
Pour des bases de développement évidemment. Je ne veux pas voir ça ailleurs..
Solution :
On utilise Oracle EE disponible sur le site d'Oracle
- Creation user oracle
- Mot de passe oracle
- Mettre à jour le .bashrc comme on veut
- xhost + en root pour utiliser l'installateur graphique avec l'utilisateur oracle
- Les binaires se téléchargent ici : https://wiki.debian.org/DataBase/Oracle
- Attention, pas la distribution zlinux évidemment
- Les prérequis des librairies (et un certains nombres de tâches décrites ci-dessus) :
- https://github.com/antonioluna/oracle12c-debian/blob/master/Pre-install.sh
- c'est trop bien...
- Dans le .bashrc :
export ORACLE_HOME
export ORACLE_SID
- Installation de rlwrap si lors du lancement de sqlplus ca merde
apt-get install rlwrap
- Dans mon user oracle
cd ~/oracle-product/product/12.1.0/dbhome_1/dbs$
mv init.ora /home/oracle/oracle-product/product/12.1.0/dbhome_1/dbs/init<MABASE>.or
- Creation du repertoire de la base
mkdir /home/oracle/oradata/<MA BASE>
- create database
- https://docs.oracle.com/cd/B28359_01/server.111/b28310/create003.htm#ADMIN1107
- Editer le fichier /home/oracle/oracle-product/product/12.1.0/dbhome_1/dbs/init<MABASE>.ora
# Change '<ORACLE_BASE>' to point to the oracle base (the one you specify at
# install time)
db_name='MABASE'
memory_target=512M
processes = 150
audit_file_dest='/home/oracle/oracle-product/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/home/oracle/oracle-product/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/home/oracle/oracle-product'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (/home/oracle/oradata/mabase/ora_control1, /home/oracle/oradata/mabase/ora_control2)
compatible ='11.2.0'
- Recommencer si cela n'a pas fonctionné :
rm -rf /home/oracle/oradata/mabase/*
- Creation du user : sqlplus / as sysdba
STARTUP NOMOUNT;
CREATE DATABASE mybase
USER SYS IDENTIFIED BY lozenge
USER SYSTEM IDENTIFIED BY lozenge
LOGFILE GROUP 1 ('/home/oracle/oradata/mybase/redo01.log') SIZE 100M,
GROUP 2 ('/home/oracle/oradata/mybase/redo02.log') SIZE 100M,
GROUP 3 ('/home/oracle/oradata/mybase/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
CHARACTER SET WE8MSWIN1252
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/home/oracle/oradata/mybase/system01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
SYSAUX DATAFILE '/home/oracle/oradata/mybase/sysaux01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TABLESPACE calv14
DATAFILE '/home/oracle/oradata/mybase/database.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/home/oracle/oradata/mybase/temp01.dbf'
SIZE 350M REUSE
UNDO TABLESPACE undotbs1
DATAFILE '/home/oracle/oradata/mybase/undotbs01.dbf'
SIZE 350M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
@${ORACLE_HOME}/rdbms/admin/catalog (long)
@${ORACLE_HOME}/rdbms/admin/catproc <-- dba_data_files est créé ici (encore plus long)
- Recommencer si cela n'a pas fonctionné :
- drop user userBase cascade;
- Creation du user :
define SG_SCHEMA = 'userBase'
define DEFAULT_TBS = 'mytbs'
define TEMP_TBS = 'tempts1'
CREATE USER &SG_SCHEMA IDENTIFIED BY password
DEFAULT TABLESPACE &DEFAULT_TBS
TEMPORARY TABLESPACE &TEMP_TBS
;
grant connect to &SG_SCHEMA;
grant resource to &SG_SCHEMA;
GRANT UNLIMITED TABLESPACE TO &SG_SCHEMA;
GRANT CREATE SYNONYM TO &SG_SCHEMA ;
GRANT CREATE VIEW TO &SG_SCHEMA ;