search
HomeDatabaseMysql TutorialORA-00704: bootstrap process failure的解决方案

刚刚手工创建了数据库,时间太晚,没继续研究,结果今天再次打开数据库时报了下面的错误ORA-00704: bootstrap process failure,

刚刚手工创建了数据库,时间太晚,没继续研究,结果今天再次打开数据库时报了下面的错误

ORA-00704: bootstrap process failure
ORA-39700: database must be opened with UPGRADE option

按照下面的建议通过

SQL>startup update

确实可以open数据库,但是终究不是问题的解决办法,下次startup仍然会报上面的错误。通过查询发现

[Oracle@sigleNode ~]$ oerr ora 39700
39700, 00000, "database must be opened with UPGRADE option"
// *Cause:  A normal database open was attempted, but the database has not
//          been upgraded to the current server version.
// *Action: Use the UPGRADE option when opening the database to run
//          catupgrd.sql (for database upgrade), or to run catalog.sql
//          and catproc.sql (after initial database creation).

通过网上常见问题的解释,大致为数据库软件进行了升级,但是对应的数据库字典表没有进行升级导致,需要startup upgrade之后,然后执行catupgrd.sql 即可。

但是我昨天刚刚手工创建的数据库没有进行升级,肯定不是这种情况,感觉特别疑惑,看一下

ORA-00704: bootstrap process failure引导进程失败,而且数据库没有进行任何操作,,仅仅是创建数据库之后创建了数据字典,结合网上其他的解释,感觉应该是创建数据字典出了问题。通过打开数据库报错都可以通过sql跟踪来跟进,跟进一下打开数据库时的sql跟踪文件

sql>startup mount;;

sql>alter session set sql_trace=true;

确认下跟踪文件的位置之后打开数据库,同样报了上面错误。

打开跟踪文件到最后几行

SELECT NULL FROM REGISTRY$ WHERE CID='CATPROC' AND VERSION = :1
END OF STMT
PARSE #5:c=20001,e=26341,p=9,cr=23,cu=0,mis=1,r=0,dep=1,og=4,tim=1390627568015438
EXEC #5:c=0,e=538,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,tim=1390627568016134
FETCH #5:c=0,e=615,p=2,cr=3,cu=0,mis=0,r=0,dep=1,og=4,tim=1390627568016806
STAT #5 id=1 cnt=0 pid=0 pos=1 bj=891 p='TABLE ACCESS FULL REGISTRY$ (cr=3 pr=2 pw=0 time=613 us)'
ORA-00704: bootstrap process failure
ORA-39700: database must be opened with UPGRADE option
EXEC #3:c=708045,e=2497539,p=41,cr=512,cu=0,mis=0,r=0,dep=0,og=4,tim=1390627569051830
ERROR #3:err=1092 tim=1718720068

执行到

SELECT NULL FROM REGISTRY$ WHERE CID='CATPROC' AND VERSION = :1
这个语句时报了错误。

将数据库用 startup upgrade 启动起来,然后执行 SELECT NULL FROM REGISTRY$ WHERE CID='CATPROC',发现没有抱错,但是没有记录,所以我到一个好的数据库中查询了 SELECT * FROM REGISTRY$ WHERE CID='CATPROC' 发现是有记录的,怀疑问题就出在这里 没有找到 CATPROC 的记录导致 数据库引导程序进程失败。
我仔细检查了一下执行的创建数据字典的脚本

@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/cataproc.sql

原来是第二个脚本手误,应该是catproc.sql

startup upgrade之后重新执行这个脚本,重新启动实例成功。

linux

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
How do you alter a table in MySQL using the ALTER TABLE statement?How do you alter a table in MySQL using the ALTER TABLE statement?Mar 19, 2025 pm 03:51 PM

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

How do I configure SSL/TLS encryption for MySQL connections?How do I configure SSL/TLS encryption for MySQL connections?Mar 18, 2025 pm 12:01 PM

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

How do you handle large datasets in MySQL?How do you handle large datasets in MySQL?Mar 21, 2025 pm 12:15 PM

Article discusses strategies for handling large datasets in MySQL, including partitioning, sharding, indexing, and query optimization.

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)?What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)?Mar 21, 2025 pm 06:28 PM

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]

How do you drop a table in MySQL using the DROP TABLE statement?How do you drop a table in MySQL using the DROP TABLE statement?Mar 19, 2025 pm 03:52 PM

The article discusses dropping tables in MySQL using the DROP TABLE statement, emphasizing precautions and risks. It highlights that the action is irreversible without backups, detailing recovery methods and potential production environment hazards.

How do you represent relationships using foreign keys?How do you represent relationships using foreign keys?Mar 19, 2025 pm 03:48 PM

Article discusses using foreign keys to represent relationships in databases, focusing on best practices, data integrity, and common pitfalls to avoid.

How do you create indexes on JSON columns?How do you create indexes on JSON columns?Mar 21, 2025 pm 12:13 PM

The article discusses creating indexes on JSON columns in various databases like PostgreSQL, MySQL, and MongoDB to enhance query performance. It explains the syntax and benefits of indexing specific JSON paths, and lists supported database systems.

How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)?How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)?Mar 18, 2025 pm 12:00 PM

Article discusses securing MySQL against SQL injection and brute-force attacks using prepared statements, input validation, and strong password policies.(159 characters)

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment