MySQL中MyISAM引擎和Heap引擎执行速度性能测试(1)
【引自heiyeluren的博客】测试环境 CPU:Intel Pentium4 2.66GHz Memory:1GB Disk:73GB/SCSI OS:FreeBSD 4.11 PHP:PHP 5.2.1 MySQL:MySQL 4.1.23b 前期工作 my.cnf max_heap_table_size = 128M 建表 use test; -- -- Store engine heap -- CREATE TABLE
【引自heiyeluren的博客】测试环境
CPU:Intel Pentium4 2.66GHz
Memory:1GB
Disk:73GB/SCSI
OS:FreeBSD 4.11
PHP:PHP 5.2.1
MySQL:MySQL 4.1.23b
前期工作
my.cnf
max_heap_table_size = 128M Salin selepas log masuk |
建表
<p>use test;</p><p>--<br>-- Store engine heap<br>--<br>CREATE TABLE `tbl_heap` ( <br>`id` int(11) NOT NULL auto_increment, <br>`name` varchar(32) NOT NULL default '', <br>`email` varchar(32) NOT NULL default '', <br>`summary` varchar(255) default '', <br>KEY `id` (`id`) <br>) ENGINE=HEAP DEFAULT CHARSET=gbk; </p><p>--<br>-- Store engine myisam<br>--<br>CREATE TABLE `tbl_isam` ( <br>`id` int(11) NOT NULL auto_increment, <br>`name` varchar(32) NOT NULL default '', <br>`email` varchar(32) NOT NULL default '', <br>`summary` varchar(255) default '', <br>KEY `id` (`id`) <br>) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p> Salin selepas log masuk |
插入数据
说明:每次都是空表插入数据
插入10000 Record
Heap engine insert 10000 record used time: 3.5008587837219<br>MyISAM engine insert 10000 record used time: 4.5881390571594 Salin selepas log masuk |
50000 Record
Heap engine insert 50000 record used time: 19.895354986191<br>MyISAM engine insert 50000 record used time: 33.866044998169
100000 Record
Heap engine insert 100000 record used time: 36.200875997543<br>MyISAM engine insert 100000 record used time: 68.34194111824
200000 Record
Heap engine insert 200000 record used time: 68.00207901001<br>MyISAM engine insert 200000 record used time: 125.26263713837 Salin selepas log masuk |
查询数据
表里分表有:200000条记录,两个表数据一致
直接select,10000次,每次取100条记录
Heap engine select 10000 times, 100 record used time: 12.122506141663<br>MyISAM engine select 10000 times, 100 record used time: 19.512896060944 Salin selepas log masuk |
直接select,1000次,每次取10000条记录
Heap engine select 1000 times, 10000 record used time: 111.54126811028<br>MyISAM engine select 1000 record used time: 116.79438710213 Salin selepas log masuk |
增加where条件,1000次,每次取10000条记录
Heap engine select 1000 times, 10000 record used time: 111.52102303505<br>MyISAM engine select 1000 times, 10000 record used time: 117.68481087685
where条件,10000次,每次从1000条起,取1000条记录
Heap engine select 10000 times, 1000 record used time: 124.28988695145<br>MyISAM engine select 10000 times, 1000 record used time: 139.82107305527
where条件增加like,10000次,每次从1000条起,取1000条记录
Heap engine select 10000 times, 1000 record used time: 145.43780493736<br>MyISAM engine select 10000 times, 1000 record used time: 163.56296992302 Salin selepas log masuk |
where条件增加索引,10000次,每次从1000条起,取1000条记录
<p>-- 建立索引 (在SQLyob下执行)<br>ALTER TABLE tbl_heap ADD INDEX idx_name (name);<br>ALTER TABLE tbl_isam ADD INDEX idx_name (name);</p><p>Heap engine alter table add index used time: 2.078<br>MyISAM engine alter table add index used time: 13.516</p><p>Heap engine select 10000 times, 1000 record used time: 153.48922395706<br>MyISAM engine select 10000 times, 1000 record used time: 239.86818814278</p> Salin selepas log masuk |
PS:不合适的索引还不如不要。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Sebab utama mengapa anda tidak boleh log masuk ke MySQL sebagai akar adalah masalah kebenaran, ralat fail konfigurasi, kata laluan tidak konsisten, masalah fail soket, atau pemintasan firewall. Penyelesaiannya termasuk: periksa sama ada parameter pengikat di dalam fail konfigurasi dikonfigurasi dengan betul. Semak sama ada kebenaran pengguna root telah diubahsuai atau dipadam dan ditetapkan semula. Sahkan bahawa kata laluan adalah tepat, termasuk kes dan aksara khas. Semak tetapan dan laluan kebenaran fail soket. Semak bahawa firewall menyekat sambungan ke pelayan MySQL.

Penyederhanaan Integrasi Data: AmazonRDSMYSQL dan Integrasi Data Integrasi Zero ETL Redshift adalah di tengah-tengah organisasi yang didorong oleh data. Proses tradisional ETL (ekstrak, menukar, beban) adalah kompleks dan memakan masa, terutamanya apabila mengintegrasikan pangkalan data (seperti Amazonrdsmysql) dengan gudang data (seperti redshift). Walau bagaimanapun, AWS menyediakan penyelesaian integrasi ETL sifar yang telah mengubah keadaan ini sepenuhnya, menyediakan penyelesaian yang mudah, hampir-sebenar untuk penghijrahan data dari RDSMYSQL ke redshift. Artikel ini akan menyelam ke integrasi RDSMYSQL Zero ETL dengan redshift, menjelaskan bagaimana ia berfungsi dan kelebihan yang dibawa kepada jurutera dan pemaju data.

1. Gunakan indeks yang betul untuk mempercepatkan pengambilan data dengan mengurangkan jumlah data yang diimbas memilih*frommployeesWherElast_name = 'Smith'; Jika anda melihat lajur jadual beberapa kali, buat indeks untuk lajur tersebut. Jika anda atau aplikasi anda memerlukan data dari pelbagai lajur mengikut kriteria, buat indeks komposit 2. Elakkan pilih * Hanya lajur yang diperlukan, jika anda memilih semua lajur yang tidak diingini, ini hanya akan memakan lebih banyak pelayan dan menyebabkan pelayan melambatkan pada masa yang tinggi atau kekerapan misalnya, jadual anda

Ya, MySQL boleh dipasang pada Windows 7, dan walaupun Microsoft telah berhenti menyokong Windows 7, MySQL masih serasi dengannya. Walau bagaimanapun, perkara berikut harus diperhatikan semasa proses pemasangan: Muat turun pemasang MySQL untuk Windows. Pilih versi MySQL yang sesuai (komuniti atau perusahaan). Pilih direktori pemasangan yang sesuai dan set aksara semasa proses pemasangan. Tetapkan kata laluan pengguna root dan simpan dengan betul. Sambung ke pangkalan data untuk ujian. Perhatikan isu keserasian dan keselamatan pada Windows 7, dan disyorkan untuk menaik taraf ke sistem operasi yang disokong.

MySQL boleh mengendalikan pelbagai sambungan serentak dan menggunakan multi-threading/multi-pemprosesan untuk menetapkan persekitaran pelaksanaan bebas kepada setiap permintaan pelanggan untuk memastikan bahawa mereka tidak terganggu. Walau bagaimanapun, bilangan sambungan serentak dipengaruhi oleh sumber sistem, konfigurasi MySQL, prestasi pertanyaan, enjin penyimpanan dan persekitaran rangkaian. Pengoptimuman memerlukan pertimbangan banyak faktor seperti tahap kod (menulis SQL yang cekap), tahap konfigurasi (menyesuaikan max_connections), tahap perkakasan (meningkatkan konfigurasi pelayan).

Apabila MySQL mengubahsuai struktur jadual, kunci metadata biasanya digunakan, yang boleh menyebabkan jadual dikunci. Untuk mengurangkan kesan kunci, langkah -langkah berikut boleh diambil: 1. Simpan jadual yang tersedia dengan DDL dalam talian; 2. Melakukan pengubahsuaian kompleks dalam kelompok; 3. Beroperasi semasa tempoh kecil atau luar puncak; 4. Gunakan alat PT-OSC untuk mencapai kawalan yang lebih baik.

MySQL tidak boleh berjalan secara langsung di Android, tetapi ia boleh dilaksanakan secara tidak langsung dengan menggunakan kaedah berikut: menggunakan pangkalan data ringan SQLite, yang dibina di atas sistem Android, tidak memerlukan pelayan yang berasingan, dan mempunyai penggunaan sumber kecil, yang sangat sesuai untuk aplikasi peranti mudah alih. Sambungkan jauh ke pelayan MySQL dan sambungkan ke pangkalan data MySQL pada pelayan jauh melalui rangkaian untuk membaca dan menulis data, tetapi terdapat kelemahan seperti kebergantungan rangkaian yang kuat, isu keselamatan dan kos pelayan.

MySQL mempunyai versi komuniti percuma dan versi perusahaan berbayar. Versi komuniti boleh digunakan dan diubahsuai secara percuma, tetapi sokongannya terhad dan sesuai untuk aplikasi dengan keperluan kestabilan yang rendah dan keupayaan teknikal yang kuat. Edisi Enterprise menyediakan sokongan komersil yang komprehensif untuk aplikasi yang memerlukan pangkalan data yang stabil, boleh dipercayai, berprestasi tinggi dan bersedia membayar sokongan. Faktor yang dipertimbangkan apabila memilih versi termasuk kritikal aplikasi, belanjawan, dan kemahiran teknikal. Tidak ada pilihan yang sempurna, hanya pilihan yang paling sesuai, dan anda perlu memilih dengan teliti mengikut keadaan tertentu.
