The Oracle database has been used throughout the project, and since I've been focusing more on the ORM Mapping framework, with little attention to Oracle features, a lot of things that are not known, and the probability of a database being swapped in a project is almost zero, it's important to look at Oracle. Just so-called, not afraid do not know, afraid do not know. Otherwise, we don't know where to start.
These two days of Oracle learning, the harvest is not small. The first few days of testing have encountered a lot of strange problems, have been well explained. Here is a typical example to talk about.
It is in the testing phase, watching the manager skilled operation of Oracle's instructions, the heart has been a little calm. The manager is the manager, this is the number of years do not write code, these Oracle instructions also remember so clear.
When the system was first tested, a bunch of puzzling bugs were reported. The result is that the database being backed up is incomplete. As a result, many tables and views are missing from the database in the test environment.
PS: At that time, my idea was, Oracle this thing, why do not have to go to the virtual machine to install Ah, dizzy dish ~ ~ ~ But it turns out that it is no problem to install Oracle into a virtual machine ~ ~ ~
After we found the problem, we all felt very puzzled, how can Oracle database have this problem? Must not be a database problem, but the backup steps are fixed ah, no problem ah. And before the GXPT project, the database backup restore degree, there is no this problem ah. Should not be in the GXPT restore no problem, in the Tky project there is a problem ah.
It is only now discovered that this is due to Oracle's flashback technology. The Oracle database, like the Windows system, has a recycle Bin. After performing the normal delete table operation, the real deletion is not performed, but it is placed in the Recycle Bin. One of the benefits of being in a recycle Bin is that you can restore deleted tables at any time.
You can view the tables in the database by performing a "Select * from Tab" operation in the SQL Plus window. Here you will find all the tables, along with some long coded ones, that are the traces of your deleted table.
But flashback also has some drawbacks. In the case of database backup, if the Recycle Bin is not purged, it is possible to cause incomplete backup data.
This explains why the backup failed. The GXPT project, in which JPA mappings are used, naturally masks what these database features are.
Problems with missing Oracle database backup data