Quote: https://www.cnblogs.com/WoLykos/p/11752813.html
In view of the increasingly frequent and interact with the database, he decided to write a personal point of view about Oracle, SqlServer, MySQL different.
MySQL is the primary object of university study, but to the time just to work SqlServer , now the main contact is the Oracle , due to other databases (such as DB2, etc.) I did not used, is not mentioned.
Forewarned: Not necessarily right, please correct me, does not blow black, do not call me.
-
The company:
MySQL was developed by the Swedish company MySQL AB, currently part of Oracle's products;
Oracle by the United States ORACLE Corporation (Oracle) developed a set of core software products;
SqlServer by Microsoft, Sybase and Ashton-Tate three companies jointly developed the current main It belongs to Microsoft; -
sql statement Flexibility:
MySQL sql statement for more flexibility , such as: limit function, insert you can insert multiple rows of data once, select some data may not add management from;
the Oracle sql statements to feel more stable tradition of some;
SqlServer to sql statement that no way out, two idiom summary: down to earth, at every step ; -
Save persistent data:
MySQL is updated in the database or restart, you will lose data;
the Oracle sql operation of the line submitted written online online log file, keeping to the disk, can be restored at any time;
SqlServer from after 2014, also have a full and lasting delay lasting characteristics; -
Submission:
The default is automatically submitted MySQL (autocommit variable is the ON);
Oracle is not automatically submit the default, the user needs to manually submit (the commit);
SqlServer default is automatically submitted, the user can manually stop (the KILL); -
Support for transactions:
MySQL support is available in the case of row-level locking storage engine innodb transaction;
the Oracle fully supports the transaction;
SqlServer support services available at the time of non-automatic submission; -
Support for concurrency:
MySQL to table-level locking (row-level locking depends on the table index) based, if a locked session time is too long, the other session will not update the data in this table, that is "pessimistic concurrency control" ;
the Oracle uses row-level lock, resource locking granularity is much smaller and does not depend on the index, much better, that support concurrency "optimistic concurrency control" ;
SqlServer dominate in the page table, table, index key and a separate data line shared lock , exclusive lock, as well as update locks , simply: with a shared lock when reading, with exclusive lock modify, update lock is a shared lock and he locks a hybrid row; -
Logical backup:
To lock MySQL logical backup data, in order to ensure backup data is consistent, will affect the normal course of business;
do not lock data when Oracle logical backup, and the backup data are consistent;
to lock data SqlServer logical backup, in order to ensure backup data is consistent, will affect the normal course of business; -
Copy the backup:
MySQL replication server configuration is simple, but the main problem the library, the library may be lost clump of certain data;
traditional Oracle data both push or pull replication, there are dual or multi-machine disaster recovery mechanism dataguard, as well as mature a hot backup tool RMAN, the main problem with the library, the library can automatically switch to the standby main library, but more complex configuration management ;
copy-only backup SqlServer is independent of a conventional backup sequence of SQL Server SQL Server backups. Typically, the backup will change the database and affect the way subsequent restore the backup . Only for: database without affecting the overall backup and restore procedures, backup performed for a special purpose. -
Performance Diagnostics:
MySQL tuning fewer diagnostic methods, mainly slow query log ;
the Oracle has a variety of sophisticated diagnostic performance tuning tools, you can achieve a lot of automatic analysis, diagnostics. For example awr, addm, sqltrace, tkproof etc ;
SqlServer performance testing tools SQL Server Profiler , performance tuning tools Database Engine Tuning Advisor , easy to use but also cool; -
Permissions and security:
MySQL users associated with a host, the host is more likely to be counterfeit and ip, there is an opportunity, no meaning;
the Oracle user and root user authority separated from each other, more traditional rights and the concept of security, law-abiding;
SqlServer This unit can be verified windows logon , then use SqlServer remote authenticated login (ie sa login); -
Related Services:
MySQL is a lightweight database, and free open-source , no service restore data;
Oracle is the weight database, charges, Oracle company of any service to the Oracle database;
SqlServer weight database costs (with Java cooperation), but also support supply business;
Summarizes the results:
MySQL advantages : small size, high speed, generally has a low cost, open-source, with "L (Linux) A (Apacheor "LN (Nginx) MP" may to establish a stable, free website system for small and medium website.
Oracle advantages : easy to use, powerful, reliability, safety, portability is good, adapt to high throughput, applicable to all types of large, medium, small, computer environment.
SqlServer advantages : graphical user interface, rich programming interface tools, fully integrated with Windows NT, support distributed partitioned view, Win applicable to the development of Web technology.