Skip to content

Install Percona

Percona merupakan salah satu alternative pengganti mysql selain mariadb. Pada web nya ditulis percona merupakan drop-in replacement dari mysql, jadi harusnya tinggal install dan langsung jalan? masalahnya ndak seperti itu setidaknya di Artix.

Install Percona

Seperti Software lain percona bisa diinstall dengan pacman atau yay dengan perintah

$ pacman -S percona-server percona-server-clients percona-toolkit

Create user dan group

$ sudo useradd mysql

$ sudo groupadd mysql

Setup Open-rc service script

Create file /etc/init.d/percona jangan lupa chmod a+x file tersebut. Edit dan copas script dibawah ini.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/openrc-run
extra_stopped_commands="setup"

retry="60"
pidfile="/run/mysqld/$RC_SVCNAME.pid"
command="/usr/bin/mysqld_safe"
command_args="--pid-file=$pidfile"
start_stop_daemon_args="--user mysql:mysql -b "


depend() {
    use net
    need localmount
}

start_pre() {
    required_dirs=$(getconf datadir "/var/lib/mysql")

    if [ ! -d $required_dirs/mysql ]; then
        eerror "Datadir '$required_dirs' is empty or invalid."
        eerror "Run '/etc/init.d/percona setup' to create new database."
    fi
}

start_post() {
    ewaitfile 10 $(getconf socket "/run/mysqld/mysqld.sock")
}

setup() {
    ebegin "Creating a new MySQL database"
    mysqld --initialize --user=mysql --datadir=/var/lib/mysql
    eend $?
}

getconf() {
    v=$(my_print_defaults | grep ^--$1)
    [ -z $v ] && echo $2 || echo ${v#*=}
}

Create additional folder dan file

Buat folder tempat database disimpan

$ sudo mkdir /var/lib/mysql

$ chown -R mysql:mysql /var/lib/mysql

Create initial database

Buat database awal dengan perintah

$ sudo rc-service percona setup

Perintah ini agak lama dikit sambil nunggu selesai periksa log service dengan perintah

$ sudo tail -f /var/log/mysqld.log

Akses database

Jalankan percona server dengan perintah

$ rc-service percona start

Setelah pembuatan initial database selesai cari password sementara yang di gunakan saat setup initial database.

$ sudo cat /var/log/mysqld.log | grep -i password

gunakan password tersebut untuk mengakses database. Saya menggunakan heidiSQL (wine) untuk client saya dan pada awal connection, muncul form untuk mengganti password yang tadi saya gunakan.

Done. Percona server sudah selesai diinstall dan tergantung user untuk memanfaatkannya, jangan lupa setup user baru hehe.

Goodluck


Last update: January 29, 2021

Comments