Linux下安装配置Oracle
1环境准备 1.1.linux系统安装 版本 RHAS4:RedHat Enterprise Linux Advance Server 4.0 1.2.检查环境 Hard Disk Space [ro
1环境准备 1.1.linux系统安装
版本
RHAS4:RedHat Enterprise Linux Advance Server 4.0
1.2.检查环境Hard Disk Space
[root@localhost /]#df –h
(目标安装目录) >2 G +1G(软件包源目录)
/tmp >400M
Mem>1G,swap>1G
[root@localhost /]#cat /proc/meminfo|grep Total
依赖软件版本
名称 最低版本 查询命令
kernel 2.6.9 #uname –a或 uname -r
glibc 2.3.2.95.27 #rpm -q glibc
gcc 3.2 #rpm -q gcc
make 3.79 #rpm -q make
binutils 2.14 #rpm -q binutils
libaio 0.3 #rpm -q libaio
openmotif 2.2.2-16 #rpm -q openmotif
setarch 1.3-1 #rpm -q setarch
1.3.检查并配置内核参数检查当前参数
/sbin/sysctl -a | grep 参数名
配置内核参数
1) 执行 [root@localhost /]#vi /etc/sysctl.conf 添加如下内容
kernel.shmall = 2097152 # OS范围内共享内存的最大页面数量, 单位4K, 默认2097152
kernel.shmmax = 536870912 # OS范围内每个共享内存段的最大尺寸. 单位Byte,默认32M
kernel.shmmni = 4096 #OS范围内共享内存段的最大数目,默认值4096
kernel.sem = 250 32000 100 128 #信号量参数
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_defaut=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
2) 生效[root@localhost /]# /sbin/sysctl -p
1.4.创建Oracle组及用户
创建用户组oinstall,dba
创建安装数据库时所需要使用的用户组oinstall,dba
[root@localhost /]#groupadd oinstall
[root@localhost /]#groupadd dba
创建用户oracle
创建用户oracle并将oinstamll,dba组定义成oracle用户的主次组
[root@localhost /]# useradd -g oinstall -G dba oracle (设定oracle用户为oinstall、dba用户组的成员)
[root@localhost /]#passwd oracle (设定oracle用户的密码)
设置shell限制(可选)
(Oracle建议对每个Linux帐户可以使用的进程数和打开的文件数设置限制)
1)执行[root@localhost /]#vi /etc/security/limits.conf添加以下四行
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
2)修改安全限制,执行[root@localhost /]# vi /etc/pam.d/login加入如下1行
session required /lib/security/pam_limits.so
1.5.配置相关目录创建Oracle系统的安装目录和数据库文件存放的目录
[root@localhost /]# mkdir -p /oracle/product/ 10.2.0 (创建数据目录)
[root@localhost /]# mkdir -p /oracle/oradata(创建数据文件目录)
[root@localhost /]# mkdir -p /oracle/flash_recovery_area(创建闪回目录)
[root@localhost /]# mkdir -p /oracle/arc_pstat(创建归档日志目录)
[root@localhost /]# mkdir -p /home/oracle/install_temp(创建oracle安装文件临时存放目录
[root@localhost /]# chown -R oracle.oinstall /home/oracle/install_temp
[root@localhost /]# chown -R oracle.oinstall /oracle
[root@localhost /]# chmod -R 775 /oracle (设定目录的读写权限)
1.6.配置环境变量确定ORACLE_SID
确定oracle_sid=oracletest #后续安装后创建数据库时的服务名也保持一致,
以oracle用户登录,修改oracle用户下的 .bash_profile 文件,完成后重启或或执行soure .bash_profile(. .bash_profile)或重登录生效
[oracle@localhost ~]$ vi /home/oracle/.bash_profile增加以下内容
umask 022
ORACLE_BASE=/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0; export ORACLE_HOME
#图形界面安装时要使用的变量
ORACLE_TERM=xterm; export ORACLE_TERM
ORACLE_OWNER=oracle; export ORACLE_OWNER
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_SID= oracletest
export ORACLE_SID
退出后查看PATH source /home/oracle/.bash_profile
[oracle@localhost ~]$ set|grep PATH
2安装Oracle 1.1.oracle安装文件准备版本
oracle10g01_10.2.0.1.0_database_linux32
文件准备
1)拷贝oracle10g01_10.2.0.1.0_database_linux32.zip
到目录/home/oracle/install_temp/下
2)解压:
unzip oracle10g01_10.2.0.1.0_database_linux32.zip
1.2.安装1.1开始
[oracle@localhost ~]$cd /home/oracle/install_temp/
[oracle@localhost ~]$cd database
[oracle@localhost ~]$ ./runInstaller #开始执行安装,等待一会出现
1.1后续安装与window上基本一致(略)
后续安装与windows上基本一致,,最后完成后出现如下图,切换用户到root下执行下两个配置脚本即可:
执行[root@localhost /]#/oracle/oraInventory/orainRoot.sh
执行[root@localhost /]#/oracle/product/10.2.0/root.sh如下所示,输入/oracle/product/ 10.2.0/bin/
3配置Oracle 1.1.创建数据库oracletest
执行[oracle@localhost ~]$dbca或图形菜单进行,注意下面一致即可(sys/oracletest)
1.2.配置监听,TNS
[oracle@localhost ~]$netca或图形菜单
最终 listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = oracletest)
(ORACLE_HOME = /oracle/product/10.2.0/)
(SID_NAME = oracletest)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
tnsnames.ora
ORACLETEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracletest)
)
)
1.3.EM
[oracle@localhost ~]$ emctl start| stop| status dbconsole
:1158/em
1.4.isqlplus[oracle@localhost ~]$ isqlplusctl startstart| stop| status
:5560/isqlplus
1.5.配置自动启动
配置机器启动时自动启动数据库,监听与EM管理平台
停止时自动停止数据库,监听与EM管理平台
修改Oracle系统配置文件/etc/oratab,把AUTO域由默认的N设置为Y,使oracle 自带的dbstart和dbshut才能够发挥作用
[root@localhost /]#vi /etc/oratab
创建启动脚本
1)[oracle@localhost ~] vi $ORACLE_HOME/bin/dbstart 找到第78行ORACLE_HOME_LISTNER=…
改为ORACLE_HOME_LISTNER=$ORACLE_HOME,
[oracle@localhost ~]cd $ORACLE_HOME/bin/
手动运行 [oracle@localhost ~] ./ dbstart
[oracle@localhost ~] ./ dbshut
测试正常与否
(日志:$ORACLE_HOME/startup.log与$ORACLE_HOME/shutdown.log)
2) [root@localhost /]#vi /etc/init.d/oracle10g
#!/bin/sh
# description: Oracle auto start-stop script.
# chkconfig: - 20 80
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.
ORA_HOME=/oracle/product/10.2.0/
ORA_OWNER=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
#su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl stop dbconsole"
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
;;
'restart')
$0 stop
$0 start
;;
esac
3) [root@localhost ~]# chmod 750 /etc/init.d/oracle10g
[root@localhost ~]# ln -s /etc/init.d/oracle10g /etc/rc0.d/K10oracle10g
[root@localhost ~]#ln -s /etc/init.d/oracle10g /etc/rc3.d/S99oracle10g
[root@localhost ~]# chkconfig --list oracle10g
[root@localhost ~]# chkconfig --level 345 oracle10g on
[root@localhost ~]# chkconfig --list oracle10g

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le langage Go est un langage de programmation efficace, concis et facile à apprendre. Il est privilégié par les développeurs en raison de ses avantages en programmation simultanée et en programmation réseau. Dans le développement réel, les opérations de base de données font partie intégrante. Cet article explique comment utiliser le langage Go pour implémenter les opérations d'ajout, de suppression, de modification et de requête de base de données. Dans le langage Go, nous utilisons généralement des bibliothèques tierces pour faire fonctionner les bases de données, telles que les packages SQL couramment utilisés, gorm, etc. Ici, nous prenons le package SQL comme exemple pour présenter comment implémenter les opérations d'ajout, de suppression, de modification et de requête de la base de données. Supposons que nous utilisons une base de données MySQL.

Le mappage polymorphe Hibernate peut mapper les classes héritées à la base de données et fournit les types de mappage suivants : join-subclass : crée une table séparée pour la sous-classe, incluant toutes les colonnes de la classe parent. table par classe : créez une table distincte pour les sous-classes, contenant uniquement des colonnes spécifiques aux sous-classes. union-subclass : similaire à join-subclass, mais la table de classe parent réunit toutes les colonnes de la sous-classe.

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

HTML ne peut pas lire directement la base de données, mais cela peut être réalisé via JavaScript et AJAX. Les étapes comprennent l'établissement d'une connexion à la base de données, l'envoi d'une requête, le traitement de la réponse et la mise à jour de la page. Cet article fournit un exemple pratique d'utilisation de JavaScript, AJAX et PHP pour lire les données d'une base de données MySQL, montrant comment afficher dynamiquement les résultats d'une requête dans une page HTML. Cet exemple utilise XMLHttpRequest pour établir une connexion à la base de données, envoyer une requête et traiter la réponse, remplissant ainsi les données dans les éléments de la page et réalisant la fonction de lecture HTML de la base de données.

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.

PHP est un langage de programmation back-end largement utilisé dans le développement de sites Web. Il possède de puissantes fonctions d'exploitation de bases de données et est souvent utilisé pour interagir avec des bases de données telles que MySQL. Cependant, en raison de la complexité du codage des caractères chinois, des problèmes surviennent souvent lorsqu'il s'agit de caractères chinois tronqués dans la base de données. Cet article présentera les compétences et les pratiques de PHP dans la gestion des caractères chinois tronqués dans les bases de données, y compris les causes courantes des caractères tronqués, les solutions et des exemples de code spécifiques. Les raisons courantes pour lesquelles les caractères sont tronqués sont des paramètres de jeu de caractères incorrects dans la base de données : le jeu de caractères correct doit être sélectionné lors de la création de la base de données, comme utf8 ou u.

Grâce au package base de données/sql de la bibliothèque standard Go, vous pouvez vous connecter à des bases de données distantes telles que MySQL, PostgreSQL ou SQLite : créez une chaîne de connexion contenant les informations de connexion à la base de données. Utilisez la fonction sql.Open() pour ouvrir une connexion à la base de données. Effectuez des opérations de base de données telles que des requêtes SQL et des opérations d'insertion. Utilisez defer pour fermer la connexion à la base de données afin de libérer des ressources.
