Linux-mariadb-10.4-二進位制安裝
阿新 • • 發佈:2022-05-12
安裝環境
系統環境centos8
下載Mariadb 二進位制編碼安裝包
[root@centos8-liyj ~]#wget https://mirrors.aliyun.com/mariadb//mariadb-10.4.24/bintar-linux-glibc_214-x86_64/mariadb-10.4.24-linux-glibc_214-x86_64.tar.gz --2022-05-12 11:21:26-- https://mirrors.aliyun.com/mariadb//mariadb-10.4.24/bintar-linux-glibc_214-x86_64/mariadb-10.4.24-linux-glibc_214-x86_64.tar.gzResolving mirrors.aliyun.com (mirrors.aliyun.com)... 223.113.144.241, 223.113.144.248, 223.113.144.238, ... Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|223.113.144.241|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 1156844354 (1.1G) [application/octet-stream] Saving to: ‘mariadb-10.4.24-linux-glibc_214-x86_64.tar.gz’ mariadb-10.4.24-linux-glibc_ 100%[==============================================>] 1.08G 1.81MB/s in 10m 41s 2022-05-12 11:32:07 (1.72 MB/s) - ‘mariadb-10.4.24-linux-glibc_214-x86_64.tar.gz’ saved [1156844354/1156844354]
安裝相關包
[root@centos8-liyj ~]#yum -y install libaio numactl-libs
使用者和組
[root@centos8-liyj ~]#groupadd mysql [root@centos8-liyj ~]#useradd -r -g mysql -s /bin/false mysql
建立目錄和授權
[root@centos8-liyj ~]#mkdir -p /data/mysql/{data,logs,tmp} [root@centos8-liyj ~]#chown -R mysql.mysql /data/mysql [root@centos8-liyj ~]#chmod -R 770 /data/mysql [root@centos8-liyj ~]#tree /data /data └── mysql binlog檔案儲存位置 ├── data #資料檔案儲存位置 ├── logs #日誌問價能儲存位置 └── tmp #快取目錄位置 4 directories, 0 files
準備程式檔案
[root@centos8-liyj ~]#tar xf mariadb-10.4.24-linux-glibc_214-x86_64_.tar.gz -C /usr/local [root@centos8-liyj ~]#cd /usr/local/ [root@centos8-liyj /usr/local]#ln -s mariadb-10.4.24-linux-glibc_214-x86_64/ mysql [root@centos8-liyj /usr/local]#chown -R root.root /usr/local/mysql/ [root@centos8-liyj /usr/local]#ll total 0 drwxr-xr-x. 2 root root 6 Jun 22 2021 bin drwxr-xr-x. 2 root root 6 Jun 22 2021 etc drwxr-xr-x. 2 root root 6 Jun 22 2021 games drwxr-xr-x. 2 root root 6 Jun 22 2021 include drwxr-xr-x. 2 root root 6 Jun 22 2021 lib drwxr-xr-x. 3 root root 17 Jun 22 2021 lib64 drwxr-xr-x. 2 root root 6 Jun 22 2021 libexec drwxrwxr-x 12 root root 257 Feb 12 07:33 mariadb-10.4.24-linux-glibc_214-x86_64 lrwxrwxrwx 1 root root 39 May 12 14:25 mysql -> mariadb-10.4.24-linux-glibc_214-x86_64/ drwxr-xr-x. 2 root root 6 Jun 22 2021 sbin drwxr-xr-x. 5 root root 49 Jun 22 2021 share drwxr-xr-x. 2 root root 6 Jun 22 2021 src
主備配置檔案
[root@centos8-liyj /usr/local]#cd mysql/support-files/ [root@centos8-liyj /usr/local/mysql/support-files]#ll total 36 -rwxr-xr-x 1 root root 1153 Feb 11 03:48 binary-configure -rw-r--r-- 1 root root 1328 Feb 11 03:42 magic -rwxr-xr-x 1 root root 1564 Feb 11 03:48 mysqld_multi.server -rwxr-xr-x 1 root root 942 Feb 11 03:48 mysql-log-rotate -rwxr-xr-x 1 root root 12228 Feb 11 03:48 mysql.server drwxr-xr-x 4 root root 37 Feb 11 04:33 policy -rw-r--r-- 1 root root 3474 Feb 11 03:48 wsrep.cnf -rwxr-xr-x 1 root root 2230 Feb 11 03:48 wsrep_notify [root@centos8-liyj /usr/local/mysql/support-files]#cp wsrep.cnf /etc/my.cnf
[root@centos8-liyj ~]#vim /etc/my.cnf
[mysqld]
datadir = /data/mysql/data
pid-file = /data/mysql/mysqll.pid
relay_log = /data/mysql/logs/mysql_relay.log
[client]
socket = /tmp/mysql.sock
# This file contains wsrep-related mysqld options. It should be included # in the main MySQL configuration file. # # Options that need to be customized: # - wsrep_provider # - wsrep_cluster_address # - wsrep_sst_auth # The rest of defaults should work out of the box. ## ## mysqld options _MANDATORY_ for correct opration of the cluster ## [mysqld] datadir = /data/mysql/data pid-file = /data/mysql/mysqll.pid server-id = 50 relay_log = /data/mysql/logs/mysql_relay.log [client] socket = /tmp/mysql.sock配置檔案內容
準備環境變數
[root@centos8-liyj /usr/local]#echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh [root@centos8-liyj /usr/local]#. /etc/profile.d/mysql.sh
初始化資料庫
[root@centos8-liyj ~]#cd /usr/local/mysql/ [root@centos8-liyj /usr/local/mysql]#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
Installing MariaDB/MySQL system tables in '/data/mysql/data' ... 2022-05-12 14:31:31 0 [Warning] You need to use --log-bin to make --binlog-format work. OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system Two all-privilege accounts were created. One is root@localhost, it has no password, but you need to be system 'root' user to connect. Use, for example, sudo mysql The second is mysql@localhost, it has no password either, but you need to be the system 'mysql' user to connect. After connecting you can set the password, if you would need to be able to connect as any of these users with a password and without sudo See the MariaDB Knowledgebase at http://mariadb.com/kb You can start the MariaDB daemon with: cd '/usr/local/mysql' ; /usr/local/mysql/bin/mysqld_safe --datadir='/data/mysql/data' You can test the MariaDB daemon with mysql-test-run.pl cd '/usr/local/mysql/mysql-test' ; perl mysql-test-run.pl Please report any problems at http://mariadb.org/jira The latest information about MariaDB is available at http://mariadb.org/. Consider joining MariaDB's strong and vibrant community: https://mariadb.org/get-involved/
準備服務指令碼和啟動
[root@centos8-liyj ~]#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld [root@centos8-liyj ~]#chkconfig --add mysqld [root@centos8-liyj ~]#systemctl start mysqld Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
mariadb資料庫安裝完成後,要安全初始化後才能登入
[root@centos8-liyj ~]#cd /usr/local/mysql/support-files/ [root@centos8-liyj /usr/local/mysql/support-files]#mysql_secure_installation NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here. Enter current password for root (enter for none): 當前資料庫管理員的密碼,無密碼直接回 OK, successfully used password, moving on... Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation. You already have your root account protected, so you can safely answer 'n'. Switch to unix_socket authentication [Y/n] y 切換到unix_套接字身份驗證 Enabled successfully! Reloading privilege tables.. ... Success! You already have your root account protected, so you can safely answer 'n'. Change the root password? [Y/n] y 設定資料管理員密碼 New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB 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? [Y/n] 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? [Y/n] y 移除管理原遠端登入 ... Success! By default, MariaDB 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? [Y/n] 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? [Y/n] y 重新整理資料庫 ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
登入測試
[root@centos8-liyj ~]#mysql -uroot -patech123456 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 19 Server version: 10.4.24-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>