Basic concept of oracle: Database vs Instance is the most confusing term for oracle users, especially those with ms SQL server experience. The two concepts www.2cto.com are actually quite simple to understand. Let's take the notepad notebook as an example. I believe everyone is familiar with it. The notepad.exe in the Windows directory is a software, right. We double-click notepad.exe (or start from the command line, this is not a problem), and then there is an execution instance of notepad in the memory, this instance only exists in the memory, once the computer is shut down and restarted, the instance no longer exists. Another example is that we have a hard disk named test.txt, which is physically stored on the hard disk, regardless of whether the computer is closed or not. Edit the hosts file. Although oracle is much more complicated than notepad, the basic principles are the same. After installing the oracleserver software, we have an oracleexecutable program on the hard disk, such as notepad.exe. Starting an oracle instance is like starting a notepad instance. This instance exists in the memory (of course, it can also be swap to the pagafile on the hard disk due to insufficient memory ), the notepad instance has only one process (thread), while complicated oracle has many processes (threads). These processes (threads) are called background process, at the same time, because oracle needs to operate a lot of data, it is necessary to allocate a relatively large memory for him, the name of this memory is SGA. Www.2cto.com then oracle的instanceopens a set of files, just like notepad.txt. oracle gave this set of files a special name: database, software, instances, files, and these concepts and differences. I think, the main reason is the structure of the Computer: the memory speed is fast, but the content is lost after power loss; the hard disk speed is slow, but the content is permanent. This feature determines the behavior of all computer software: To be as fast as possible, the program should run in the memory, the data should be cached in the memory; to be permanently saved, programs and data must be stored in the hard disk. Programs running in the memory and data caching for storing the program are called instances. Programs retained on the hard disk are called software and data retained on the hard disk, we call it a file. For oracle, a group of files are required, and consistency and integrity must be maintained. This group of files is named database. Related Data Dictionary: v $ instance v $ database noticed www.2cto.com v $ instance. instance_name varchar2 (16) v $ database. name varchar2 (9). Therefore, the length of instance and database names is limited. If you do not enter the database and SID names when using DBCA, the prompt is: the database name must be 1 to 8 characters, and the SID must be 1 to 64 Letter and digit characters. However, I tried 10gR2 on xp and manually created an instance with a name of more than 15 characters. The instance can be successfully created and can be started up, but the instance_name field in the query v $ instance is blank, within 15 characters (including 15 characters), it is normal. It is recommended that the instance name should not exceed 15 characters, and the database name should not exceed 8 characters. Generally, it is best to keep the instance name and database name consistent.