FreeBSD 14 untuk Menginstal dan Mengkonfigurasi mysql90-server dan mysql90-client

· 2 min read

MySQL menggunakan layanan sistem mysql-server untuk mengontrol proses server basis data dan waktu proses di server FreeBSD Anda. Sebelum menjalankan M

Terkait dengan aplikasi basis data MySQL, basis data adalah kumpulan data terstruktur yang diorganisasikan dan disimpan dalam bentuk tabel. Basis data dapat berfungsi sebagai repositori pusat tempat informasi dikelola secara efisien, yang memungkinkan pengguna untuk menyimpan, mengambil, memperbarui, dan menghapus data. MySQL menyediakan kerangka kerja perangkat lunak untuk membuat, memelihara, dan berinteraksi dengan basis data ini, sehingga penyimpanan dan pengambilan data berjalan lancar dan andal.

MySQL adalah sistem manajemen basis data relasional (RDBMS) sumber terbuka yang menggunakan sintaks SQL (Structured Query Language) untuk membuat, mengelola, dan memanipulasi basis data di server. MySQL berfungsi sebagai server basis data yang andal untuk aplikasi skala kecil, menengah, dan besar untuk menawarkan interaksi data yang berkelanjutan, keandalan, dan kinerja tinggi.

Pada saat artikel ini ditulis, versi terbaru MySQL adalah versi 9. Server MySQL versi 9 merupakan salah satu server basis data SQL (Structured Query Language) yang sangat cepat, multi-threaded, multi-user, dan tangguh. Server MySQL ditujukan untuk sistem produksi yang sangat penting dengan beban kerja yang berat. Selain itu, mysql90-server juga dapat disematkan dalam perangkat lunak yang digunakan secara massal.

Dalam artikel ini kami akan menjelaskan cara menginstal server dan klien MySQL versi 9 pada FreeBSD 14.0, mengamankan server basis data, dan mengaktifkan akses terautentikasi ke konsol basis data.


1. Instal Dependensi

Server MySQL membutuhkan banyak dependensi. Hal ini dikarenakan MySQL dapat diintegrasikan dengan berbagai aplikasi seperti PHP dan lainnya. Oleh karena itu, dependensi merupakan syarat utama untuk memulai menginstal server MySQL.

Jika kita merujuk pada freshports FreeBSD, ada banyak dependensi yang digunakan oleh MySQL:

Build dependencies:
  1. liblz4>0 : archivers/liblz4
  2. libunwind>0 : devel/libunwind
  3. bison : devel/bison
  4. cmake : devel/cmake-core
  5. pkgconf>=1.3.0_1 : devel/pkgconf
Runtime dependencies:
  1. groff : textproc/groff
  2. perl5>=5.36<5.37 : lang/perl5.36
Library dependencies:
  1. libcurl.so : ftp/curl
  2. libicutu.so : devel/icu
  3. liblz4.so : archivers/liblz4
  4. libhidapi.so : comms/hidapi
  5. libfido2.so : security/libfido2
  6. libunwind.so : devel/libunwind
  7. libedit.so.0 : devel/libedit
  8. libmysqlclient.so.24 : databases/mysql90-client

2. Instal MySQL

Server dan klien MySQL tersedia di repositori FreeBSD 14 default dengan beberapa versi dan paket tambahan. MySQL dapat diinstal di FreeBSD menggunakan distribusi biner yang disediakan oleh Oracle. Cara yang paling disukai dan termudah untuk menginstal MySQL adalah dengan menggunakan sistem port ‘mysql-server’ dan ‘mysql-client’ yang tersedia di repositori FreeBSD 14.

Ikuti langkah-langkah di bawah ini untuk menginstal paket server basis data MySQL terbaru menggunakan pengelola paket pkg dan sistem port.

a. Install MySQL dengan sistem ports FreeBSD

Sebelum memulai, pastikan sistem port FreeBSD Anda sudah yang terbaru.

Update port FreeBSD
root@hostname1:~ # portmaster -af
root@hostname1:~ # portupgrade -ai
Atau jika Anda hanya ingin memperbarui MySQL, jalankan perintah berikut.

Update MySQL
root@hostname1:~ # portmaster databases/mysql90-server
root@hostname1:~ # portupgrade -PP mysql90-server
Now we continue by installing MySQL server and client.

Install MySQL server and client
root@hostname1:~ # cd /usr/ports/databases/mysql90-client/ && make install clean 
root@hostname1:~ # cd /usr/ports/databases/mysql90-server/ && make install clean

b. Install MySQL with package PKG

Before you begin, make sure your FreeBSD PKG package is up to date.

Update PKG
root@hostname1:~ # pkg update -f
root@hostname1:~ # pkg upgrade -f
root@hostname1:~ # pkg bootstrap -f
Sekarang kita lanjutkan dengan menginstal server dan klien MySQL.

Install MySQL server and client
root@hostname1:~ # pkg install databases/mysql90-client
root@hostname1:~ # pkg install databases/mysql90-server
Lihat versi MySQL yang terinstal pada server FreeBSD Anda.

Check version MySQL
root@hostname1:~ # mysql --version
mysql  Ver 9.0.1 for FreeBSD14.0 on amd64 (Source distribution)

c. Aktifkan MySQL di rc.conf

Agar MySQL dapat berjalan secara otomatis, saat komputer dimatikan atau dihidupkan ulang, tambahkan skrip di bawah ini ke file /etc/rc.conf.

Enable MySQL serever and client
root@hostname1:~ # ee /etc/rc.conf
mysql_enable="YES"
mysql_dbdir="/var/db/mysql"
mysql_confdir="/usr/local/etc/mysql"
mysql_optfile="/usr/local/etc/mysql/my.cnf"
#mysql_pidfile="/var/db/mysql/hostname1.pid

3. Menjalankan MySQL Server di FreeBSD

MySQL menggunakan layanan sistem mysql-server untuk mengontrol proses server basis data dan waktu proses di server FreeBSD Anda. Sebelum menjalankan MySQL, Anda harus menjalankan perintah berikut untuk memastikan MySQL berjalan normal atau tidak.

Start the MySQL service
root@hostname1:~ # service mysql-server start
mysql already running?  (pid=1081).
View the MySQL service status and verify that it's running
root@hostname1:~ # service mysql-server status
mysql is running as pid 857.
Stop the MySQL service
root@hostname1:~ # service mysql-server stop
Stopping mysql.
Waiting for PIDS: 857.
Restart the MySQL Server
root@hostname1:~ # service mysql-server restart
Stopping mysql.
Waiting for PIDS: 1091.
Starting mysql.

4. Mengamankan MySQL Server

Dalam aplikasi MySQL, skrip mysql_secure_installation digunakan untuk menghapus pengaturan default yang tidak aman seperti database dan autentikasi untuk semua pengguna database di server database Anda. Ikuti langkah-langkah di bawah ini untuk menjalankan skrip, menetapkan kata sandi pengguna database root baru, menghapus pengguna anonim, dan menonaktifkan database pengujian di server Anda.

mysql_secure_installation
root@hostname1:~ # mysql_secure_installation

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No: y

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0
Please set the password for root here.

New password: router1234

Re-enter new password: router1234

Estimated strength of the password: 50
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done!
root@hostname1:~ #
Setelah Anda membuat kata sandi untuk pengguna MySQL, Mulai ulang server basis data MySQL untuk menerapkan perubahan konfigurasi Anda.

Restart MySQL
root@hostname1:~ # service mysql-server restart

5. Cara Mengakses MySQL

Anda dapat menggunakan utilitas MySQL CLI untuk mengakses konsol server basis data MySQL atau modul aplikasi lain seperti php-mysqli yang dapat mengintegrasikan MySQL dengan aplikasi PHP. Ikuti langkah-langkah di bawah ini untuk mengakses konsol MySQL atau masuk ke server basis data MySQL.

Log in to MySQL server
root@hostname1:~ # mysql -u root -p
Enter password: router1234
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 9.0.1 Source distribution

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
Setelah berhasil masuk ke server basis data MySQL, Anda dapat menjalankan perintah SQL atau perintah lainnya. Berikut ini adalah contoh penggunaan MySQL pada sistem FreeBSD.

a. metode otentikasi pengguna root adalah [auth_socket]

select user,host,plugin from mysql.user
mysql> select user,host,plugin from mysql.user;
+------------------+-----------+-----------------------+
| user             | host      | plugin                |
+------------------+-----------+-----------------------+
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session    | localhost | caching_sha2_password |
| mysql.sys        | localhost | caching_sha2_password |
| root             | localhost | caching_sha2_password |
+------------------+-----------+-----------------------+
4 rows in set (0.00 sec)

b. Melihat charset default

show variables like "chara%"
mysql> show variables like "chara%";
+--------------------------+----------------------------------+
| Variable_name            | Value                            |
+--------------------------+----------------------------------+
| character_set_client     | utf8mb4                          |
| character_set_connection | utf8mb4                          |
| character_set_database   | utf8mb4                          |
| character_set_filesystem | binary                           |
| character_set_results    | utf8mb4                          |
| character_set_server     | utf8mb4                          |
| character_set_system     | utf8mb3                          |
| character_sets_dir       | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.02 sec)

c. Melihat database

show databases
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

d. membuat basis data (test_database)

Create database
mysql> create database test_database;
Query OK, 1 row affected (0.05 sec)

e. membuat tabel pada database “test_database”

Create table
mysql> create table test_database.test_table (id int, name varchar(50), address varchar(50), primary key (id));
Query OK, 0 rows affected (0.20 sec)

f. Memasukkan data ke dalam tabel “test_table”

Insert data
mysql> insert into test_database.test_table(id, name, address) values("001", "FreeBSD", "Hiroshima");
Query OK, 1 row affected (0.02 sec)

g. tampilkan tabel "test_table"

Show table
mysql> select * from test_database.test_table;
+----+---------+-----------+
| id | name    | address   |
+----+---------+-----------+
|  1 | FreeBSD | Hiroshima |
+----+---------+-----------+
1 row in set (0.01 sec)

h. Hapus database "test_database"

Delete database
mysql> drop database test_database;
Query OK, 1 row affected (0.15 sec)
Anda telah menginstal MySQL 9 di server FreeBSD 14 dan mengamankan server basis data untuk mewajibkan autentikasi bagi semua pengguna basis data. Anda dapat menggunakan server basis data MySQL sebagai backend kustom dengan memodifikasi konfigurasi utama untuk mendengarkan koneksi dari alamat tertentu seperti jaringan Drupal, Ghost Blog, dan lainnya. Selain itu, Anda dapat menginstal modul add-on untuk menggunakan MySQL dengan aplikasi lain seperti PHP di server Anda.
Subscribe on LinkedIn FreeBSD 14 untuk Menginstal dan Mengkonfigurasi mysql90-server dan mysql90-client

Enclosures Link: FreeBSD 14 untuk Menginstal dan Mengkonfigurasi mysql90-server dan mysql90-client

Silahkan Berkomentar, Kakak...! Bunda...!

Posting Komentar