Apa itu INFORMATION SCHEMA Database

Apa itu INFORMATION SCHEMA database? INFORMATION_SCHEMA adalah database yang terdapat di MySQL/MariaDB dimana didalamnya telah disediakan akses ke database metadata, semua informasi tentang Server MySQL/MariaDB seperti nama database, tabel, kolom, tipe data, hak akses dan lain sebagainya terdapat didalamnya.

INFORMATION_SCHEMA ini sangatlah berguna bagi seorang developer, karena dengannya kita bisa mencari tau banyak hal yang kita butuhkan untuk membangun ataupun memanagemen database. Sebelum Saya berikan contoh pemanfaatannya, berikut Saya adalah list table yang terdapat di information schema. Gunakan query ini untuk menampilkan :

USE INFORMATION_SCHEMA;
SHOW TABLES;

berikut list yang ditampilkan

 

 

Tables_in_information_schema
CHARACTER_SETS
COLLATIONS
COLLATION_CHARACTER_SET_APPLICABILITY
COLUMNS
COLUMN_PRIVILEGES
ENGINES
EVENTS
FILES
GLOBAL_STATUS
GLOBAL_VARIABLES
KEY_COLUMN_USAGE
OPTIMIZER_TRACE
PARAMETERS
PARTITIONS
PLUGINS
PROCESSLIST
PROFILING
REFERENTIAL_CONSTRAINTS
ROUTINES
SCHEMATA
SCHEMA_PRIVILEGES
SESSION_STATUS
SESSION_VARIABLES
SQL_FILTER_INFO
STATISTICS
TABLES
TABLESPACES
TABLE_CONSTRAINTS
TABLE_PRIVILEGES
TRIGGERS
USER_PRIVILEGES
VIEWS
INNODB_LOCKS
INNODB_TRX
INNODB_SYS_DATAFILES
INNODB_METRICS
INNODB_SYS_TABLESTATS
INNODB_CMP
METADATA_LOCK_INFO
INNODB_CMP_RESET
INNODB_CMP_PER_INDEX
INNODB_CMPMEM_RESET
INNODB_FT_DELETED
INNODB_BUFFER_PAGE_LRU
INNODB_LOCK_WAITS
INNODB_SYS_COLUMNS
INNODB_SYS_INDEXES
INNODB_FT_DEFAULT_STOPWORD
INNODB_SYS_FIELDS
INNODB_CMP_PER_INDEX_RESET
INNODB_BUFFER_PAGE
INNODB_CMPMEM
THREAD_GROUP_STATUS
INNODB_FT_BEING_DELETED
INNODB_SYS_TABLESPACES
INNODB_FT_INDEX_CACHE
INNODB_SYS_FOREIGN_COLS
INNODB_SYS_TABLES
INNODB_BUFFER_POOL_STATS
INNODB_FT_CONFIG
INNODB_SYS_FOREIGN
INNODB_FT_INDEX_TABLE

 

Baca Juga : Tips Membuat User Database MySQL/MariaDB

 

Silahkan kalian explore sendiri setiap masing masing tabelnya karena Saya sendiri pun belum mengexplore isi dari masing – masing tabel tersebut. Ada beberapa tabel dari INFORMATION_SCHEMA yang sudah pernah Saya gunakan dan berikut contoh pemanfaatan INFORMATION_SCHEMA yang biasa saya gunakan :

 

#Mencari kolom ada di tabel apa saja pada suatu database
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME = 'namaKolom' AND TABLE_SCHEMA = 'namaDatabase';

#Menampilkan user beserta privileges nya
SELECT * FROM INFORMATION_SHCEMA.USER_PRIVILEGES;

#Melihat list Procedure pada suatu database
SELECT ROUTINE_NAME, ROUTINE_TYPE, ROUTINE_SCHEMA
FROM INFORMATION_SCHEMA.ROUTINES 
WHERE ROUTINE_TYPE = 'PROCEDURE' AND ROUTINE_SCHEMA = 'namaDatabase';

#Cek Collation database
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'namaDatabase';

#Cek Collation semua tabel di suatu database
SELECT TABLE_NAME, TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'namaDatabase';
#Cek Collation kolom berdasarkan tabel
SELECT TABLE_NAME, COLUMN_NAME, CHARACTER_SET_NAME, COLLATION_NAME
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = 'namaTabel'
AND TABLE_SCHEMA = 'namaDatabase';

 

Ya itu lah yang Saya tahu mengenai apa itu INFORMATION SCHEMA database dan bagai mana pemanfaatannya, sekian informasi yang bisa Saya berikan dan semoga bermanfaat. Terima kasih ^^.

SUMBER :

Chapter 1 INFORMATION_SCHEMA Tables

Lukems: Hanya manusia biasa yang hidup sederhana dan mempunyai keluarga kecil yang bahagia

This website uses cookies.