MySQL中show 句法得到表列及整个库的详细信息,方便查看数据库的详细信息。
show databases;
show tables from db_name;
show columns from table_name from db_name;
show index from talbe_name [from db_name];
show status;
show variables;
show [full] processlist;
show table status [from db_name];
show grants for user;
除了status,processlist和grants外,其它的都可以带有like wild选项,它可以使用SQL的'%'和'_'字符;
show databases like '%t';
将会列出所有数据库名字末尾为't'字符的数据库
当然了,在这些sql中,你也可以用db_name.table_name来代替 table_name from db_name这样写会更简便些!
如果一个用户没有一个表的任何权限,表将不在SHOW TABLES
或mysqlshow db_name
中的输出中显示
大家可能还记得describe table_name ,它实现的是与show columns from db_name.table_name一样的效果
show status将可以用mysqlshow --status 来得到同样的效果
SHOW FIELDS
是SHOW COLUMNS
一个同义词,SHOW KEYS
是SHOW INDEX
一个同义词。你也可以用mysqlshow db_name tbl_name
或mysqlshow -k db_name tbl_name
列出一张表的列或索引。
SHOW INDEX
以非常相似于ODBC的SQLStatistics
调用的格式返回索引信息。下面的列被返回:
SHOW STATUS
提供服务器的状态信息(象mysqladmin extended-status
一样)。输出类似于下面的显示,尽管格式和数字可以有点不同:
+--------------------------+--------+<br>| Variable_name | Value |<br>+--------------------------+--------+<br>| Aborted_clients | 0 |<br>| Aborted_connects | 0 |<br>| Connections | 17 |<br>| Created_tmp_tables | 0 |<br>| Delayed_insert_threads | 0 |<br>| Delayed_writes | 0 |<br>| Delayed_errors | 0 |<br>| Flush_commands | 2 |<br>| Handler_delete | 2 |<br>| Handler_read_first | 0 |<br>| Handler_read_key | 1 |<br>| Handler_read_next | 0 |<br>| Handler_read_rnd | 35 |<br>| Handler_update | 0 |<br>| Handler_write | 2 |<br>| Key_blocks_used | 0 |<br>| Key_read_requests | 0 |<br>| Key_reads | 0 |<br>| Key_write_requests | 0 |<br>| Key_writes | 0 |<br>| Max_used_connections | 1 |<br>| Not_flushed_key_blocks | 0 |<br>| Not_flushed_delayed_rows | 0 |<br>| Open_tables | 1 |<br>| Open_files | 2 |<br>| Open_streams | 0 |<br>| Opened_tables | 11 |<br>| Questions | 14 |<br>| Slow_queries | 0 |<br>| Threads_connected | 1 |<br>| Threads_running | 1 |<br>| Uptime | 149111 |<br>+--------------------------+--------+
上面列出的状态变量有下列含义:
关于上面的一些注释:
- 如果
Opened_tables
太大,那么你的table_cache
变量可能太小。 - 如果
key_reads
太大,那么你的key_cache
可能太小。缓存命中率可以用key_reads
/key_read_requests
计算。 - 如果
Handler_read_rnd
太大,那么你很可能有大量的查询需要MySQL扫描整个表或你有没正确使用键值的联结(join)。
SHOW VARIABLES
显示出一些MySQL系统变量的值,你也能使用mysqladmin variables
命令得到这个信息。如果缺省值不合适,你能在mysqld
启动时使用命令行选项来设置这些变量的大多数。输出类似于下面的显示,尽管格式和数字可以有点不同:
+------------------------+--------------------------+<br>| Variable_name | Value |<br>+------------------------+--------------------------+<br>| back_log | 5 |<br>| connect_timeout | 5 |<br>| basedir | /my/monty/ |<br>| datadir | /my/monty/data/ |<br>| delayed_insert_limit | 100 |<br>| delayed_insert_timeout | 300 |<br>| delayed_queue_size | 1000 |<br>| join_buffer_size | 131072 |<br>| flush_time | 0 |<br>| interactive_timeout | 28800 |<br>| key_buffer_size | 1048540 |<br>| language | /my/monty/share/english/ |<br>| log | OFF |<br>| log_update | OFF |<br>| long_query_time | 10 |<br>| low_priority_updates | OFF |<br>| max_allowed_packet | 1048576 |<br>| max_connections | 100 |<br>| max_connect_errors | 10 |<br>| max_delayed_threads | 20 |<br>| max_heap_table_size | 16777216 |<br>| max_join_size | 4294967295 |<br>| max_sort_length | 1024 |<br>| max_tmp_tables | 32 |<br>| net_buffer_length | 16384 |<br>| port | 3306 |<br>| protocol-version | 10 |<br>| record_buffer | 131072 |<br>| skip_locking | ON |<br>| socket | /tmp/mysql.sock |<br>| sort_buffer | 2097116 |<br>| table_cache | 64 |<br>| thread_stack | 131072 |<br>| tmp_table_size | 1048576 |<br>| tmpdir | /machine/tmp/ |<br>| version | 3.23.0-alpha-debug |<br>| wait_timeout | 28800 |<br>+------------------------+--------------------------+<p><code>SHOW PROCESSLIST</code>显示哪个线程正在运行,你也能使用<code>mysqladmin processlist</code>命令得到这个信息。<br>如果你有<strong>process</strong>权限, 你能看见所有的线程,否则,你仅能看见你自己的线程。<br> 见7.20<code> KILL</code>句法。如果你不使用<code>FULL</code>选项,那么每个查询只有头100字符被显示出来。 </p><p><code>SHOW GRANTS FOR user</code>列出对一个用户必须发出以重复授权的授权命令。 </p><pre class="brush:php;toolbar:false">mysql> SHOW GRANTS FOR root@localhost;<br>+---------------------------------------------------------------------+<br>| Grants for root@localhost |<br>+---------------------------------------------------------------------+<br>| GRANT ALL PRIVILEGES ON *.* TO 'root''localhost' WITH GRANT OPTION |<br>+---------------------------------------------------------------------+

Dalam pengoptimuman pangkalan data, strategi pengindeksan hendaklah dipilih mengikut keperluan pertanyaan: 1. Apabila pertanyaan melibatkan pelbagai lajur dan urutan syarat ditetapkan, gunakan indeks komposit; 2. Apabila pertanyaan melibatkan pelbagai lajur tetapi urutan syarat tidak ditetapkan, gunakan pelbagai indeks lajur tunggal. Indeks komposit sesuai untuk mengoptimumkan pertanyaan berbilang lajur, manakala indeks lajur tunggal sesuai untuk pertanyaan tunggal lajur.

Untuk mengoptimumkan pertanyaan perlahan MySQL, SlowQuerylog dan Performance_Schema perlu digunakan: 1. Dayakan SlowQueryLog dan tetapkan ambang untuk merakam pertanyaan perlahan; 2. Gunakan Performance_Schema untuk menganalisis butiran pelaksanaan pertanyaan, cari kesesakan prestasi dan mengoptimumkan.

MySQL dan SQL adalah kemahiran penting untuk pemaju. 1.MYSQL adalah sistem pengurusan pangkalan data sumber terbuka, dan SQL adalah bahasa standard yang digunakan untuk mengurus dan mengendalikan pangkalan data. 2.MYSQL menyokong pelbagai enjin penyimpanan melalui penyimpanan data yang cekap dan fungsi pengambilan semula, dan SQL melengkapkan operasi data yang kompleks melalui pernyataan mudah. 3. Contoh penggunaan termasuk pertanyaan asas dan pertanyaan lanjutan, seperti penapisan dan penyortiran mengikut keadaan. 4. Kesilapan umum termasuk kesilapan sintaks dan isu -isu prestasi, yang boleh dioptimumkan dengan memeriksa penyataan SQL dan menggunakan perintah menjelaskan. 5. Teknik pengoptimuman prestasi termasuk menggunakan indeks, mengelakkan pengimbasan jadual penuh, mengoptimumkan operasi menyertai dan meningkatkan kebolehbacaan kod.

MySQL Asynchronous Master-Slave Replikasi membolehkan penyegerakan data melalui binlog, meningkatkan prestasi baca dan ketersediaan yang tinggi. 1) Rekod pelayan induk berubah kepada binlog; 2) Pelayan hamba membaca binlog melalui benang I/O; 3) Server SQL Thread menggunakan binlog untuk menyegerakkan data.

MySQL adalah sistem pengurusan pangkalan data sumber terbuka. 1) Buat Pangkalan Data dan Jadual: Gunakan perintah Createdatabase dan Createtable. 2) Operasi Asas: Masukkan, Kemas kini, Padam dan Pilih. 3) Operasi lanjutan: Sertai, subquery dan pemprosesan transaksi. 4) Kemahiran Debugging: Semak sintaks, jenis data dan keizinan. 5) Cadangan Pengoptimuman: Gunakan indeks, elakkan pilih* dan gunakan transaksi.

Pemasangan dan operasi asas MySQL termasuk: 1. Muat turun dan pasang MySQL, tetapkan kata laluan pengguna root; 2. Gunakan arahan SQL untuk membuat pangkalan data dan jadual, seperti CreateTatabase dan Createtable; 3. Melaksanakan operasi CRUD, gunakan memasukkan, pilih, kemas kini, padamkan arahan; 4. Buat indeks dan prosedur tersimpan untuk mengoptimumkan prestasi dan melaksanakan logik kompleks. Dengan langkah -langkah ini, anda boleh membina dan mengurus pangkalan data MySQL dari awal.

Innodbbufferpool meningkatkan prestasi pangkalan data MySQL dengan memuatkan data dan halaman indeks ke dalam ingatan. 1) Halaman data dimuatkan ke dalam bufferpool untuk mengurangkan cakera I/O. 2) Halaman kotor ditandakan dan disegarkan ke cakera secara teratur. 3) Pengurusan Data Pengurusan Algoritma LRU Penghapusan. 4) Mekanisme pembacaan memuatkan halaman data yang mungkin terlebih dahulu.

MySQL sesuai untuk pemula kerana mudah dipasang, kuat dan mudah untuk menguruskan data. 1. Pemasangan dan konfigurasi mudah, sesuai untuk pelbagai sistem operasi. 2. Menyokong operasi asas seperti membuat pangkalan data dan jadual, memasukkan, menanyakan, mengemas kini dan memadam data. 3. Menyediakan fungsi lanjutan seperti menyertai operasi dan subqueries. 4. Prestasi boleh ditingkatkan melalui pengindeksan, pengoptimuman pertanyaan dan pembahagian jadual. 5. Sokongan sokongan, pemulihan dan langkah keselamatan untuk memastikan keselamatan data dan konsistensi.


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

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa