数据库启动之NOMOUNT
1.启动数据库:STARTUP命令后,执行顺序如下 首先使用服务器上的SPFILESID文件启动实例,如未找到,使用服务器上默认的SPFILE启动实例;如未找到默认SPFILE,使用INITSID文件启动实例,如仍未找到,报错。 SYS@bys1startup; ORA-01078: failure in processing
1.启动数据库:STARTUP命令后,执行顺序如下
首先使用服务器上的SPFILESID文件启动实例,如未找到,使用服务器上默认的SPFILE启动实例;如未找到默认SPFILE,使用INITSID文件启动实例,如仍未找到,报错。
SYS@bys1>startup;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initaaa.ora'
找到参数文件后,此时ORACLE根据参数文件中的设置创建实例,分配内存,启动后台进程。
可以在STARTUP 命令中使用PFILE选项指定参数文件来改变优先顺序 :startuppfile=c:\orcl\pfile\init.ora
2.startup nomount
只启动实例不打开数据库中任何文件,不打开控制文件,只使用了初始化参数文件。这个过程也是启动数据库实例的过程。即读取参数文件,应用参数启动实例。
在WINDOWS上是ORCLE.EXE初始化,在UNIX/LINUX上是ORACLE可执行文件初始化。在操作系统中查看ORACLE可执行文件:WIN平台dir oracle.exe 或者 UNIX/LINUX平台 file oracle
此状态只有在创建数据库或重建控制文件时使用。此时ORACLE将进行如下工作:
分配SGA配置所有内存缓冲区和相关结构,启动所需全部后台进程,打开报警文件alertSID.log和追踪文件trace;
下面是实现启动的信息
SQL> conn sys/oraclesys as sysdba
已连接到空闲例程。
SQL> startup nomount;
ORACLE 例程已经启动。
Total System Global Area 431038464 bytes
Fixed Size 1375088 bytes
Variable Size 331351184 bytes
Database Buffers 92274688 bytes
Redo Buffers 6037504 bytes
3.实例启动时ALERT日志文件中的信息
在ALERT日志中可以看到实例启动时后台进程也相应启动,并且给出了PID及OSID信息。PID是进程在数据库内部的标识符编号,OSID代表进程在操作系统上进程编号。
通过数据库v$process视图,查询PID与SPID对应: v$process视图是操作系统到数据库的入口。
其中PID=1的进程是初始化数据库的进程,启动其它进程前即被占用,并在数据库中一直存在。SPID列代表操作上的进程号,通过查询SPID可以在OS中相应查询到进程。比如在操作系统中发现某进程占用高CPU/内存,可以通过进程号的对应找出相应的数据库进程,进行诊断优化。
Latchwait列代表进程当前正在等待的latch信息,Latchspin列记录进程正在通过SPIN进行Latch竞争。ADDR列代表进程地址、进程状态等信息在内存中记录。
Select addr,pid,spid,username,program,latchwait from v$process;
SunFeb 03 21:50:38 2013
StartingORACLE instance (normal)
LICENSE_MAX_SESSION= 0
LICENSE_SESSIONS_WARNING= 0
Pickedlatch-free SCN scheme 2
Autotuneof undo retention is turned on.
IMODE=BR
ILAT=27
LICENSE_MAX_USERS= 0
SYSauditing is disabled
Startingup:
OracleDatabase 11g Enterprise Edition Release11.2.0.1.0 - Production --------------数据库版本
Withthe Partitioning, OLAP, Data Mining and Real Application Testing options.
Usingparameter settings in server-side spfile C:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEORCL.ORA
Systemparameters with non-default values:
processes = 150
large_pool_size = 8M
memory_target = 412M
control_files ="D:\DISK1\CONTROL01.CTL" --------------------参数文件中的参数
control_files ="D:\DISK2\CONTROL02.CTL"
control_files ="D:\DISK3\CONTROL03.CTL"
control_files ="D:\DISK4\CONTROL04.CTL"
control_files ="D:\DISK5\CONTROL05.CTL"
db_block_size = 8192
db_cache_size = 32M
db_cache_advice = "ON"
compatible = "11.2.0.0.0"
log_archive_dest_1 = "location=d:\disk1\offlinelog\mandatory"
log_archive_dest_2 = "location=d:\disk2\offlinelog\"
log_archive_dest_3 = "location=d:\disk3\offlinelog\optional"
log_archive_dest_4 = "location=d:\disk4\offlinelog\optional"
log_archive_dest_5 = "location=d:\disk5\offlinelog\mandatory"
log_archive_dest_state_1 = "ENABLE"
log_archive_min_succeed_dest= 3
db_recovery_file_dest ="C:\app\Administrator\flash_recovery_area"
db_recovery_file_dest_size= 3852M
undo_tablespace = "UNDOTBS1"
remote_login_passwordfile="EXCLUSIVE"
db_domain = ""
dispatchers = "(PROTOCOL=TCP)(SERVICE=orclXDB)"
audit_file_dest ="C:\APP\ADMINISTRATOR\ADMIN\ORCL\ADUMP"
audit_trail = "DB"
db_name = "orcl"
open_cursors = 300
diagnostic_dest = "C:\APP\ADMINISTRATOR"
SunFeb 03 21:50:38 2013
PMONstarted with pid=2, OS id=2396
SunFeb 03 21:50:38 2013
VKTMstarted with pid=3, OS id=2408 at elevated priority
VKTMrunning at (10)millisec precision with DBRM quantum (100)ms -----------------------后台进程启动
SunFeb 03 21:50:38 2013
GEN0started with pid=4, OS id=612
SunFeb 03 21:50:38 2013
DIAGstarted with pid=5, OS id=2100
SunFeb 03 21:50:38 2013
DBRMstarted with pid=6, OS id=2332
SunFeb 03 21:50:38 2013
PSP0started with pid=7, OS id=2072
SunFeb 03 21:50:38 2013
DIA0started with pid=8, OS id=2404
SunFeb 03 21:50:38 2013
MMANstarted with pid=9, OS id=2400
SunFeb 03 21:50:38 2013
DBW0started with pid=10, OS id=2356
SunFeb 03 21:50:38 2013
LGWRstarted with pid=11, OS id=2484
SunFeb 03 21:50:38 2013
CKPTstarted with pid=12, OS id=2488
SunFeb 03 21:50:38 2013
SMONstarted with pid=13, OS id=2352
SunFeb 03 21:50:38 2013
RECOstarted with pid=14, OS id=2376
SunFeb 03 21:50:38 2013
MMONstarted with pid=15, OS id=2360
SunFeb 03 21:50:38 2013
MMNLstarted with pid=16, OS id=2512
startingup 1 dispatcher(s) for network address'(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
startingup 1 shared server(s) ...
ORACLE_BASEfrom environment = C:\app\Administrator

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

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Sujets chauds





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.

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

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.

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())

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.

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.
