Ubuntu Server Guide Changes, errors and bugs


Download 1.27 Mb.
Pdf ko'rish
bet114/286
Sana20.12.2022
Hajmi1.27 Mb.
#1035308
1   ...   110   111   112   113   114   115   116   117   ...   286
Bog'liq
ubuntu-server-guide

Database Engines
Whilst the default configuration of MySQL provided by the Ubuntu packages is perfectly functional and
performs well there are things you may wish to consider before you proceed.
MySQL is designed to allow data to be stored in different ways. These methods are referred to as either
database or storage engines. There are two main engines that you’ll be interested in: InnoDB and MyISAM.
Storage engines are transparent to the end user. MySQL will handle things differently under the surface,
but regardless of which storage engine is in use, you will interact with the database in the same way.
Each engine has its own advantages and disadvantages.
While it is possible, and may be advantageous to mix and match database engines on a table level, doing so
reduces the effectiveness of the performance tuning you can do as you’ll be splitting the resources between
two engines instead of dedicating them to one.
• MyISAM is the older of the two. It can be faster than InnoDB under certain circumstances and favours
a read only workload. Some web applications have been tuned around MyISAM (though that’s not to
imply that they will slow under InnoDB). MyISAM also supports the FULLTEXT data type, which
allows very fast searches of large quantities of text data. However MyISAM is only capable of locking an
entire table for writing. This means only one process can update a table at a time. As any application
that uses the table scales this may prove to be a hindrance. It also lacks journaling, which makes it
harder for data to be recovered after a crash. The following link provides some points for consideration
about using MyISAM on a production database.
• InnoDB is a more modern database engine, designed to be ACID compliant which guarantees database
transactions are processed reliably. Write locking can occur on a row level basis within a table. That
means multiple updates can occur on a single table simultaneously. Data caching is also handled in
memory within the database engine, allowing caching on a more efficient row level basis rather than
file block. To meet ACID compliance all transactions are journaled independently of the main tables.
This allows for much more reliable data recovery as data consistency can be checked.
As of MySQL 5.5 InnoDB is the default engine, and is highly recommended over MyISAM unless you have
specific need for features unique to the engine.

Download 1.27 Mb.

Do'stlaringiz bilan baham:
1   ...   110   111   112   113   114   115   116   117   ...   286




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling