Mengelola Server dan Database menggunakan PHPMYADMIN
phpMyAdmin adalah aplikasi PHP yang memungkinkan pengguna untuk mengelola database MySQL dan MariaDB melalui antarmuka web. Alat ini memungkinkan pengguna untuk menjalankan berbagai tugas administrasi database seperti membuat, mengubah, dan menghapus database serta tabel, menjalankan perintah SQL, dan banyak lagi.
Instalasi phpMyAdmin
Langkah 1: Instalasi Apache, MySQL, dan PHP
Sebelum menginstal phpMyAdmin, pastikan server Anda memiliki Apache, MySQL, dan PHP yang terinstal. Berikut adalah perintah untuk menginstalnya pada server berbasis Linux (Ubuntu):
Copy
bashCopy codesudo apt update
sudo apt install apache2
sudo apt install mysql-server
sudo apt install php libapache2-mod-php php-mysql
Langkah 2: Instalasi phpMyAdmin
Setelah menginstal Apache, MySQL, dan PHP, langkah berikutnya adalah menginstal phpMyAdmin:
Copy
bashCopy codesudo apt install phpmyadmin
Selama proses instalasi, Anda akan diminta untuk memilih server web. Pilih Apache dan tekan Enter. Selanjutnya, Anda akan diminta untuk mengkonfigurasi database phpMyAdmin. Pilih "Yes" dan masukkan password root MySQL Anda.
Langkah 3: Konfigurasi phpMyAdmin
Setelah instalasi selesai, Anda perlu mengkonfigurasi Apache untuk mengarahkan permintaan ke phpMyAdmin. Buka file konfigurasi Apache:
Copy
bashCopy codesudo nano /etc/apache2/apache2.conf
Tambahkan baris berikut di akhir file:
Copy
plaintextCopy codeInclude /etc/phpmyadmin/apache.conf
Simpan dan tutup file, lalu restart Apache:
Copy
bashCopy codesudo systemctl restart apache2
Langkah 4: Akses phpMyAdmin
Sekarang, Anda dapat mengakses phpMyAdmin melalui browser dengan mengunjungi http://your_server_ip/phpmyadmin
. Masuk dengan menggunakan kredensial MySQL Anda.
Menggunakan phpMyAdmin
Membuat Database Baru
Masuk ke phpMyAdmin.
Klik tab "Databases".
Masukkan nama database baru di bawah "Create database".
Klik tombol "Create".
Membuat Tabel Baru
Pilih database yang baru saja Anda buat dari daftar di sebelah kiri.
Klik tab "Structure".
Masukkan nama tabel dan jumlah kolom, lalu klik "Go".
Definisikan kolom tabel, termasuk nama kolom, tipe data, dan atribut lainnya, lalu klik "Save".
Mengelola Tabel
Pilih tabel dari daftar di sebelah kiri.
Klik tab "Structure" untuk melihat atau mengubah struktur tabel.
Klik tab "Browse" untuk melihat data dalam tabel.
Klik tab "Insert" untuk menambahkan data baru ke tabel.
Klik tab "SQL" untuk menjalankan perintah SQL langsung pada tabel.
Menjalankan Perintah SQL
Pilih database dari daftar di sebelah kiri.
Klik tab "SQL".
Masukkan perintah SQL yang ingin dijalankan, lalu klik "Go".
Backup dan Restore Database
Backup Database:
Pilih database yang ingin di-backup.
Klik tab "Export".
Pilih metode export (Quick atau Custom), lalu klik "Go" untuk mengunduh file SQL.
Restore Database:
Pilih database tujuan.
Klik tab "Import".
Klik "Choose File" dan pilih file SQL yang ingin di-restore.
Klik "Go" untuk memulai proses restore.
Keamanan phpMyAdmin
Mengamankan phpMyAdmin sangat penting untuk melindungi data sensitif. Beberapa langkah yang dapat Anda ambil termasuk:
Mengubah URL Akses: Mengubah URL default dari
/phpmyadmin
menjadi sesuatu yang lebih tidak mudah ditebak.Menggunakan SSL: Pastikan koneksi ke phpMyAdmin dienkripsi dengan menggunakan HTTPS.
Mengatur Autentikasi Tambahan: Menggunakan htpasswd untuk menambahkan lapisan autentikasi tambahan.
Tentu! Berikut adalah beberapa contoh query yang sering digunakan dalam phpMyAdmin untuk mengelola database dan tabel.
1. Membuat Database
Copy
CREATE DATABASE contoh_database;
2. Membuat Tabel
Copy
CREATE TABLE contoh_tabel (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(30) NOT NULL,
email VARCHAR(50),
tanggal_daftar TIMESTAMP
);
3. Menambahkan Data ke Tabel
Copy
INSERT INTO contoh_tabel (nama, email)
VALUES ('John Doe', 'john@example.com');
4. Membaca Data dari Tabel
Copy
SELECT id, nama, email FROM contoh_tabel;
5. Mengupdate Data dalam Tabel
Copy
UPDATE contoh_tabel
SET email = 'john_doe@example.com'
WHERE id = 1;
6. Menghapus Data dari Tabel
Copy
Copy
DELETE FROM contoh_tabel
WHERE id = 1;
7. Backup Database
Copy
Pilih database yang ingin di-backup, kemudian klik tab "Export"
-- Pilih metode export (Quick atau Custom), lalu klik "Go" untuk mengunduh file SQL
8. Restore Database
Copy
Pilih database tujuan
-- Klik tab "Import"
-- Klik "Choose File" dan pilih file SQL yang ingin di-restore
-- Klik "Go" untuk memulai proses restore
9. Membuat Pengguna Baru dan Memberikan Hak Akses
Copy
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON contoh_database.* TO 'newuser'@'localhost';
FLUSH PRIVILEGES;
10. Menghapus Database
Copy
DROP DATABASE contoh_database;
11. Menghapus Tabel
Copy
DROP TABLE contoh_tabel;
12. Membuat Index pada Tabel
Copy
CREATE INDEX idx_nama ON contoh_tabel (nama);
13. Membuat Relasi Antar Tabel
Misalkan kita punya dua tabel users
dan orders
dan ingin membuat relasi antara keduanya.
Copy
CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(30) NOT NULL
);
CREATE TABLE orders (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id INT(6) UNSIGNED,
product_name VARCHAR(50),
FOREIGN KEY (user_id) REFERENCES users(id)
);
14. Mengambil Data dengan Join
Copy
SELECT users.nama, orders.product_name
FROM users
JOIN orders ON users.id = orders.user_id;
15. Membuat View
Copy
CREATE VIEW view_users_orders AS
SELECT users.nama, orders.product_name
FROM users
JOIN orders ON users.id = orders.user_id;
16. Menggunakan View
Copy
SELECT * FROM view_users_orders;
17. Menggunakan Stored Procedure
Copy
CREATE PROCEDURE GetUserByEmail(IN userEmail VARCHAR(50))
BEGIN
SELECT * FROM contoh_tabel WHERE email = userEmail;
END //
DELIMITER ;
18. Menggunakan Trigger
Copy
CREATE TRIGGER before_insert_contoh_tabel
BEFORE INSERT ON contoh_tabel
FOR EACH ROW
BEGIN
SET NEW.tanggal_daftar = NOW();
END;
Semua kode di atas bisa dijalankan di phpMyAdmin menggunakan tab SQL. Semoga contoh-contoh ini membantu Anda dalam mengelola server dan database menggunakan phpMyAdmin! Jika ada pertanyaan lebih lanjut atau topik lain yang ingin dibahas, jangan ragu untuk bertanya.
Contoh query nya
Copy
-- phpMyAdmin SQL Dump
-- version 5.2.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Aug 05, 2024 at 10:28 AM
-- Server version: 10.4.32-MariaDB
-- PHP Version: 8.2.12
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Database: `siakad`
--
-- --------------------------------------------------------
--
-- Table structure for table `dosen`
--
CREATE TABLE `dosen` (
`id_dosen` int(11) NOT NULL,
`nama` varchar(100) DEFAULT NULL,
`id_jurusan` int(11) DEFAULT NULL,
`nip` varchar(20) DEFAULT NULL,
`gelar` varchar(50) DEFAULT NULL,
`email` varchar(100) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `dosen`
--
INSERT INTO `dosen` (`id_dosen`, `nama`, `id_jurusan`, `nip`, `gelar`, `email`) VALUES
(1, 'Dr. A', 1, '123456789', 'S.Kom, M.Kom', 'a@universitas.com'),
(2, 'Dr. B', 2, '987654321', 'S.T, M.T', 'b@universitas.com'),
(3, 'Dr. C', 3, '192837465', 'SE, M.Ak', 'c@universitas.com'),
(4, 'Dr. D', 4, '564738291', 'SH, M.H', 'd@universitas.com'),
(5, 'Dr. E', 5, '657483920', 'S.Sos, M.Sos', 'e@universitas.com');
-- --------------------------------------------------------
--
-- Table structure for table `fakultas`
--
CREATE TABLE `fakultas` (
`id_fakultas` int(11) NOT NULL,
`id_universitas` int(11) DEFAULT NULL,
`nama_fakultas` varchar(100) DEFAULT NULL,
`dekan` varchar(100) DEFAULT NULL,
`gedung` varchar(50) DEFAULT NULL,
`telepon` varchar(15) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `fakultas`
--
INSERT INTO `fakultas` (`id_fakultas`, `id_universitas`, `nama_fakultas`, `dekan`, `gedung`, `telepon`) VALUES
(1, 1, 'Fakultas Teknik', 'Dr. A', 'Gedung A', '021-1234567'),
(2, 1, 'Fakultas Ekonomi', 'Dr. B', 'Gedung B', '021-2345678'),
(3, 2, 'Fakultas Hukum', 'Dr. C', 'Gedung C', '021-3456789'),
(4, 3, 'Fakultas Kedokteran', 'Dr. D', 'Gedung D', '021-4567890'),
(5, 4, 'Fakultas Ilmu Sosial', 'Dr. E', 'Gedung E', '021-5678901');
-- --------------------------------------------------------
--
-- Table structure for table `jurusan`
--
CREATE TABLE `jurusan` (
`id_jurusan` int(11) NOT NULL,
`id_fakultas` int(11) DEFAULT NULL,
`nama_jurusan` varchar(100) DEFAULT NULL,
`ketua_jurusan` varchar(100) DEFAULT NULL,
`akreditasi` char(2) DEFAULT NULL,
`jumlah_dosen` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `jurusan`
--
INSERT INTO `jurusan` (`id_jurusan`, `id_fakultas`, `nama_jurusan`, `ketua_jurusan`, `akreditasi`, `jumlah_dosen`) VALUES
(1, 1, 'Teknik Informatika', 'Dr. X', 'A', 10),
(2, 1, 'Teknik Sipil', 'Dr. Y', 'B', 8),
(3, 2, 'Akuntansi', 'Dr. Z', 'A', 12),
(4, 3, 'Ilmu Hukum', 'Dr. W', 'A', 15),
(5, 4, 'Sosiologi', 'Dr. V', 'B', 7);
-- --------------------------------------------------------
--
-- Table structure for table `mahasiswa`
--
CREATE TABLE `mahasiswa` (
`nim` varchar(15) NOT NULL,
`nama` varchar(100) DEFAULT NULL,
`id_jurusan` int(11) DEFAULT NULL,
`angkatan` year(4) DEFAULT NULL,
`alamat` varchar(255) DEFAULT NULL,
`telepon` varchar(15) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `mahasiswa`
--
INSERT INTO `mahasiswa` (`nim`, `nama`, `id_jurusan`, `angkatan`, `alamat`, `telepon`) VALUES
('2021001', 'Budi', 1, '2021', 'Jl. X No.1', '08123456789'),
('2021002', 'Siti', 2, '2021', 'Jl. Y No.2', '08123456790'),
('2021003', 'Ahmad', 3, '2021', 'Jl. Z No.3', '08134567890'),
('2021004', 'Dewi', 4, '2021', 'Jl. A No.4', '08145678901'),
('2021005', 'Rina', 5, '2021', 'Jl. B No.5', '08156789012');
-- --------------------------------------------------------
--
-- Table structure for table `mata_kuliah`
--
CREATE TABLE `mata_kuliah` (
`kode_mk` varchar(10) NOT NULL,
`nama_mk` varchar(100) DEFAULT NULL,
`sks` int(11) DEFAULT NULL,
`semester` int(11) DEFAULT NULL,
`id_jurusan` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `mata_kuliah`
--
INSERT INTO `mata_kuliah` (`kode_mk`, `nama_mk`, `sks`, `semester`, `id_jurusan`) VALUES
('AK101', 'Akuntansi Dasar', 3, 1, 3),
('IF101', 'Algoritma dan Pemrograman', 3, 1, 1),
('IF102', 'Basis Data', 3, 2, 1),
('IH101', 'Hukum Perdata', 3, 1, 4),
('TS101', 'Mekanika Tanah', 3, 1, 2);
-- --------------------------------------------------------
--
-- Table structure for table `nilai`
--
CREATE TABLE `nilai` (
`id_nilai` int(11) NOT NULL,
`nim` varchar(15) DEFAULT NULL,
`kode_mk` varchar(10) DEFAULT NULL,
`id_dosen` int(11) DEFAULT NULL,
`nilai` char(1) DEFAULT NULL,
`semester` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `nilai`
--
INSERT INTO `nilai` (`id_nilai`, `nim`, `kode_mk`, `id_dosen`, `nilai`, `semester`) VALUES
(1, '2021001', 'IF101', 1, 'A', 1),
(2, '2021002', 'IF102', 2, 'B', 2),
(3, '2021003', 'TS101', 3, 'C', 1),
(4, '2021004', 'AK101', 4, 'A', 1),
(5, '2021005', 'IH101', 5, 'B', 1);
-- --------------------------------------------------------
--
-- Table structure for table `universitas`
--
CREATE TABLE `universitas` (
`id_universitas` int(11) NOT NULL,
`nama` varchar(100) DEFAULT NULL,
`alamat` varchar(255) DEFAULT NULL,
`kota` varchar(50) DEFAULT NULL,
`akreditasi` char(2) DEFAULT NULL,
`telepon` varchar(15) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
--
-- Dumping data for table `universitas`
--
INSERT INTO `universitas` (`id_universitas`, `nama`, `alamat`, `kota`, `akreditasi`, `telepon`) VALUES
(1, 'Universitas A', 'Jl. A No.1', 'Kota A', 'A', '021-1234567'),
(2, 'Universitas B', 'Jl. B No.2', 'Kota B', 'B', '021-2345678'),
(3, 'Universitas C', 'Jl. C No.3', 'Kota C', 'A', '021-3456789'),
(4, 'Universitas D', 'Jl. D No.4', 'Kota D', 'C', '021-4567890'),
(5, 'Universitas E', 'Jl. E No.5', 'Kota E', 'B', '021-5678901');
--
-- Indexes for dumped tables
--
--
-- Indexes for table `dosen`
--
ALTER TABLE `dosen`
ADD PRIMARY KEY (`id_dosen`),
ADD KEY `id_jurusan` (`id_jurusan`);
--
-- Indexes for table `fakultas`
--
ALTER TABLE `fakultas`
ADD PRIMARY KEY (`id_fakultas`),
ADD KEY `id_universitas` (`id_universitas`);
--
-- Indexes for table `jurusan`
--
ALTER TABLE `jurusan`
ADD PRIMARY KEY (`id_jurusan`),
ADD KEY `id_fakultas` (`id_fakultas`);
--
-- Indexes for table `mahasiswa`
--
ALTER TABLE `mahasiswa`
ADD PRIMARY KEY (`nim`),
ADD KEY `id_jurusan` (`id_jurusan`);
--
-- Indexes for table `mata_kuliah`
--
ALTER TABLE `mata_kuliah`
ADD PRIMARY KEY (`kode_mk`),
ADD KEY `id_jurusan` (`id_jurusan`);
--
-- Indexes for table `nilai`
--
ALTER TABLE `nilai`
ADD PRIMARY KEY (`id_nilai`),
ADD KEY `nim` (`nim`),
ADD KEY `kode_mk` (`kode_mk`),
ADD KEY `id_dosen` (`id_dosen`);
--
-- Indexes for table `universitas`
--
ALTER TABLE `universitas`
ADD PRIMARY KEY (`id_universitas`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT for table `dosen`
--
ALTER TABLE `dosen`
MODIFY `id_dosen` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `fakultas`
--
ALTER TABLE `fakultas`
MODIFY `id_fakultas` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `jurusan`
--
ALTER TABLE `jurusan`
MODIFY `id_jurusan` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `nilai`
--
ALTER TABLE `nilai`
MODIFY `id_nilai` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
--
-- AUTO_INCREMENT for table `universitas`
--
ALTER TABLE `universitas`
MODIFY `id_universitas` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
--
-- Constraints for dumped tables
--
--
-- Constraints for table `dosen`
--
ALTER TABLE `dosen`
ADD CONSTRAINT `dosen_ibfk_1` FOREIGN KEY (`id_jurusan`) REFERENCES `jurusan` (`id_jurusan`);
--
-- Constraints for table `fakultas`
--
ALTER TABLE `fakultas`
ADD CONSTRAINT `fakultas_ibfk_1` FOREIGN KEY (`id_universitas`) REFERENCES `universitas` (`id_universitas`);
--
-- Constraints for table `jurusan`
--
ALTER TABLE `jurusan`
ADD CONSTRAINT `jurusan_ibfk_1` FOREIGN KEY (`id_fakultas`) REFERENCES `fakultas` (`id_fakultas`);
--
-- Constraints for table `mahasiswa`
--
ALTER TABLE `mahasiswa`
ADD CONSTRAINT `mahasiswa_ibfk_1` FOREIGN KEY (`id_jurusan`) REFERENCES `jurusan` (`id_jurusan`);
--
-- Constraints for table `mata_kuliah`
--
ALTER TABLE `mata_kuliah`
ADD CONSTRAINT `mata_kuliah_ibfk_1` FOREIGN KEY (`id_jurusan`) REFERENCES `jurusan` (`id_jurusan`);
--
-- Constraints for table `nilai`
--
ALTER TABLE `nilai`
ADD CONSTRAINT `nilai_ibfk_1` FOREIGN KEY (`nim`) REFERENCES `mahasiswa` (`nim`),
ADD CONSTRAINT `nilai_ibfk_2` FOREIGN KEY (`kode_mk`) REFERENCES `mata_kuliah` (`kode_mk`),
ADD CONSTRAINT `nilai_ibfk_3` FOREIGN KEY (`id_dosen`) REFERENCES `dosen` (`id_dosen`);
COMMIT;
Kesimpulan
phpMyAdmin adalah alat yang kuat dan mudah digunakan untuk mengelola database MySQL dan MariaDB. Dengan antarmuka grafisnya, phpMyAdmin membuat tugas-tugas administrasi database menjadi lebih mudah bahkan untuk pemula. Menguasai penggunaan phpMyAdmin dapat meningkatkan efisiensi dan produktivitas dalam mengelola database.
Semoga panduan ini membantu Anda memahami cara mengelola server dan database menggunakan phpMyAdmin! Jika ada pertanyaan atau topik lain yang ingin Anda pelajari, jangan ragu untuk bertanya.
Subscribe to my newsletter
Read articles from Cinnamon GuestHouse directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Cinnamon GuestHouse
Cinnamon GuestHouse
Cinnamon GuestHouse adalah tempat penginapan yang menawarkan pengalaman menginap yang nyaman dan menyenangkan. Fasilitas yang tersedia disini meliputi kamar tidur yang nyaman dengan pemandangan luar jendela yang langsung mengarah ke taman kanak-kanak yang luas dan asri, kolam renang yang bersih dan terawat, serta restoran yang menyajikan berbagai pilihan hidangan yang terlihat sederhana namun memiliki cita rasa yang lezat. Cinnamon Guesthouse sangat cocok untuk menjadi tempat berlibur yang menenangkan. Kalian bisa mengajak keluarga, pasangan, teman, maupun individu yang mencari tempat libur yang nyaman dan tenang