Skip to main content

[LOMP – 3] Cài đặt Web Server OpenLiteSpeed trên Red Hat CentOS 5 – Cài đặt MySQL MariaDB

[LOMP – 3] Cài đặt Web Server OpenLiteSpeed trên Red Hat CentOS 5 – Cài đặt MySQL MariaDB

Tiếp tục với phần trước đã cài xong OpenLiteSpeed + PHP, phần này mình sẽ tiến hành cài đặt và cấu hình đơn giản MariaDB Server để cho PHP Server có thể tương tác kết nối truy vấn database có lưu sẳn trong bộ máy cơ sở dữ liệu MySQL MariaDB.

Cài đặt MySQL MariaDB Server:

Tại sao lại cài MariaDB thay vì MySQL? Như bạn cũng thấy kể từ CentOS 7 Red Hat đã tạm biệt với MySQL truyền thống của Oracle và thay thế nó bằng một phiên bản tương tự mới mẻ hơn nhưng được đánh giá tốt hơn kể ngay từ khi ra mắt đó chính là MariaDB, do chính cha đẻ của MySQL viết lại. (MySQL giờ đây do Oracle phát triển.)
Mặc định ở kho của Red Hat CentOS 5 thì MySQL của nó là bản Mình sẽ tiến hành cài luôn bản MySQL 5.0 này nếu đơn giản gõ yum install mysql mysql-server... tuy nhiên một số bạn lại có nhu cầu sử dụng phiên bản MariaDB cao hơn, ví dụ MariaDB 10. Nếu như thế các bạn phải cài thêm kho chính chủ của MariaDB

Install MariaDB Repo:
Các bạn lên trang chủ của mariadb.org
Chọn trong tool tạo file repo của MariaDB là CentOS 5 và MariaDB 10 hoặc phiên bản nào mà bạn mong muốn để MariaDB tạo ra file MariaDB.repo cho bạn bỏ vào /etc/yum.repos.d/.

[LOMP - 3] Cài đặt Web Server OpenLiteSpeed trên Red Hat CentOS 5 – Cài đặt MySQL MariaDB

Ví dụ mình dùng CentOS 5 64bit và MariaDB 10.1 chẳng hạn:

nano /etc/yum.repos.d/MariaDB.repo

# MariaDB 10.1 CentOS repository list - created 2016-11-13 02:35 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos5-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Cài MariaDB Server:

Sau khi cài xong kho MariaDB cho CentOS 5, bạn tiến hành cài theo câu lệnh yum mà trên trang MariaDB đã hướng dẫn:

yum -y install MariaDB-server MariaDB-client

Yum tool sẽ download các file cài rpm chuẩn bị sẳn của MariaDB tại yum.mariadb.org về cho bạn sử dụng. Sau khi cái xong bạn có thể kiểm tra lại phiên bản MariaDB bằng câu lệnh sau:

mysql -V

mysql  Ver 15.1 Distrib 10.1.19-MariaDB, for Linux (x86_64) using readline 5.1

10.1.19-MariaDB đúng là bản MariaDB 10.1

Cấu hình MariaDB Server:

Việc tiếp theo là chúng ta sẽ cấu hình và khởi chạy MariaDB Database Server. Cấu hình MariaDB tương đối phức tạp, một số bạn không rành thì chỉ cần giữ nguyên cấu hình mặc định rồi chạy luôn và dùng bình thường nhưng một số bạn khác sẽ tìm hiểu cấu hình MariaDB như thế nào để thích hợp với cái code của bạn đó viết nhất, cái này thì mỗi nhà code mỗi kiểu nên mỗi cấu hình khác nhau nữa.
Ở đây mình đã soạn sẳn 3 cấu hình cho các bạn sử dụng và tham khảo, đối với các bạn chỉ cần xác định lượng memory tức RAM của server, vps bạn là bao nhiêu để lấy file cấu hình MariaDB thích hợp về và sử dụng.

Trước tiên ta sẽ Backup toàn bộ file cấu hình đang có của MySQL MariaDB cái đã:

service mariadb stop > /dev/null 2>&1
mkdir -p /backupconfig/mysql/
cp -r /var/lib/mysql /backupconfig/mysql/mysql_datadir >/dev/null 2>&1
cp /etc/my.cnf /backupconfig/mysql > /dev/null 2>&1
cp /etc/my.cnf.d /backupconfig/mysql > /dev/null 2>&1
mv /root/.my.cnf  /backupconfig/mysql > /dev/null 2>&1
mkdir -p /var/lib/mysql
mkdir -p /var/log/mariadb
chown mysql:mysql /var/lib/mysql
chown mysql:mysql /var/log/mariadb

Tùy vào dung lựng RAM của máy chủ bạn (gõ free -m để xem RAM) mà bạn lấy file cấu hình my.cnf nào về nhé:
Nếu RAM dưới 1GB:

wget http://1.voduy.com/c/centos5/mariadb/my-small.cnf -O /etc/my.cnf

Nếu RAM hơn 1GB:

wget http://1.voduy.com/c/centos5/mariadb/my-medium.cnf -O /etc/my.cnf

Nếu RAM trên 4GB:

wget http://1.voduy.com/c/centos5/mariadb/my-large.cnf -O /etc/my.cnf

Khởi chạy MariaDB Server:

chkconfig mariadb on > /dev/null 2>&1
service mariadb start > /dev/null 2>&1
chkconfig mysql on > /dev/null 2>&1
service mysql start > /dev/null 2>&1

Kiểm tra lại MariaDB Server đã chạy chưa (3306 là port lắng nghe của MariaDB):

[[email protected] ~]# netstat -lntup|grep 3306
tcp6       0      0 :::3306                 :::*                    LISTEN      1790/mysqld

Đặt mật khẩu Root MariaDB Server:

Chổ này bạn chú ý một chút là có sự phân biệt giữa User Root MySQLUser Root SSH mà bạn đang login vào cấu hình mọi thứ nhé, 2 tụi nó là 2 user khác nhau, một cái là trong hệ điều hành CentOS một cái là trong cơ sở dữ liệu MySQL MariaDB. (Cũng giống như user đăng nhập máy tính Windows của bạn khác với user login MySQL trong Xamp của bạn cài trên localhost ấy).

Giả sử bạn muốn 123456 là pass bạn muốn đặt cho user root mysql chẳng hạn thì bạn reset password root mysql như sau:

vpass='123456'
mysqladmin -u root password $vpass

Mỗi lần user root SSH login vào muốn điều khiển MySQL chẳng lã lại cứ phải nhập pass root MySQL? Nên ta nên ghi lại pass cho user root ssh nhớ pass của user root mysql như sau:

vpass='123456'
echo -e "[client]\npassword='$vpass'\n" > /root/.my.cnf
chmod 600 /root/.my.cnf

Vậy là pass được nhớ trong file /root/.my.cnf trên nên sau này khi user root ssh có login vào SSH mà muốn điều khiển MySQL MariaDB thì nó không không cần gõ pass nữa. Chổ này bạn phải làm đúng quy trình đặt pass trước rồi mới lưu pass vào .my.cnf nếu không sẽ rất lộn xộn.

Trong ví dụ sau mình sẽ xoá một số thứ rác trong MySQL MariaDB có sẳn để làm sạch (root ssh lúc này ra lệnh mà không cần gõ pass cho root mysql nữa):

mysql -e "DELETE FROM mysql.user WHERE User=''"
mysql -e "DROP DATABASE test" >/dev/null 2>&1
mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"
mysql -e "DELETE FROM mysql.user WHERE user='' or password='';"
mysql -e "FLUSH PRIVILEGES"

Tuy nhiên sử dụng câu lệnh MySQL để điểu khiển cơ sở dữ liệu thì một số bạn lại thấy không tiện hoặc không rành câu lệnh cho lắm. Thế nên người ta đã tạo ra một tool quản lý MySQL là phpMyAdmin viết bằng PHP rất tiện dụng. Bạn có thể cài phpMyAdmin vào để chạy trên Web Server dùng cho việc import export chỉnh sửa database.

Cài phpMyAdmin:

Bởi vì bạn đã có sẳn OpenLiteSpeed và PHP nên việc cài thêm phpMyAdmin cũng không quá khó, bạn chú ý chọn đúng phiên bản PHP như phần trước bạn đã cài vì phpMyAdmin phụ thuộc vào PHP bạn đã cài để nó lấy đúng phiên bản cần thiết về:

PHPver=56
yum -y install --enablerepo=remi,remi-php$PHPver phpMyAdmin

Cài xong mặc định source phpMyAdmin sẽ nằm ở vị trí /etc/phpMyAdmin/usr/share/phpMyAdmin bạn có thể vào đó cấu hình lại cho đúng theo nhu cầu sử dụng của mình. Ở đây mình chỉ cần hình bảo mật lại chút ít cho /etc/phpMyAdmin/config.inc.php

wget http://1.voduy.com/c/centos5/phpMyAdmin/config.inc.php.txt -O /etc/phpMyAdmin/config.inc.php
sed -i "s/%blowfish_secret%/$(cat /dev/urandom | tr -cd 'a-zA-Z0-9' | head -c 100)/g" /etc/phpMyAdmin/config.inc.php

Một chút nữa sau khi add được trang web rồi bạn có thể truy cập phpMyAdmin qua đường link http://ten-trang-web/phpMyAdmin để quản lý MySQL MariaDB qua giao diện Web.

Vậy là MySQL MariaDB Server đã tương đối hoàn thành cấu hình có thể được sử dụng rồi. Bạn có thể đọc tiếp bài tiếp theo là một tùy chọn cho Serie loạt bài này đó là Phần 4 cài Let’s Encrypt để xin KEY SSL chạy HTTPS cho Website.

Cám ơn bạn đã đọc hết bài viết, hãy bấm chia sẻ lên mạng xã hội để nhớ rằng bạn đã từng nắm được kiến thức do bài viết này cung cấp rồi:
Share

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Share