In actual development applications, Oracle databases are often heard about creating a database, creating an instance, and starting an instance. Ask them what a database is and what an instance is. They probably give the answer that the database is an instance and the instance is a database. There is no difference. Here, we can only say that although they may have some experience with Oracle, the basic concepts are still unclear.
What is a database is actually very simple. A database is a medium for storing data. For example, common files are one type. There are several types of data storage in Oracle10g. The first is the file format, that is, creating a batch of files in your disk and storing information in these files. The second is the disk array form. What does this mean? It means that the database is not stored as a certain file, but formatted one or more disks into a format of oracle, it means that the entire disk is stored in the Oracle database and cannot be used for other purposes. This advantage is the high storage performance, because the entire disk is the most suitable File System Format for Oracle instead of using other file formats. Of course, there may be other forms, such as networks. However, we usually use file formats. In file formats, databases refer to a series of files, such as data files, control files, and redo files.
What is an instance? An Instance actually refers to a series of processes in the operating system and the memory blocks allocated to these processes. In Oracle, we can create an oracle instance. At this time, although the process and a series of memory such as SGA are fast, database files are not read at this time. So it's just an instance. Later, you can manually or automatically load the database file into our database instance through commands, at this time, the database can let us really start accessing the operation.
Therefore, if you want to implement a database application, the database and database instance are indispensable. If only those files of the database are available, the data can only be represented in this file, however, we cannot directly perform the operation. However, if only the database instance is available, even though we can perform an acute operation, we do not know which data is operated, and the data generated by the operation cannot be saved. Therefore, when an oracle instance loads an Oracle database, the database can be used.
Note that the Oracle instance can only load the database once after it is started. If you want to disconnect the database from the instance and then re-mount it to a database instance, then you need to first stop the database instance process, then re-establish a process for this instance, and then load another database. Otherwise, you must throw the ORA-16169 error, saying the database has been opened. Because a database instance can only load and open one instance during its lifecycle.