MySQL/MariaDB二進制安裝


本文說明MySQL/MariaDB二進制安裝的過程

mysql和mariadb的安裝方式基本一致,唯一初始化方式有點不一樣

 

1.規划:

數據文件存儲位置                /data/mysql/data
日志文件存儲位置                /data/logs/mysql
binlog文件存儲位置             /data/mysql

緩存目錄位置                      /dta/tmp

我這里規划都是放在 /data目錄下是因為掛載了2T硬盤,方便存儲

你們可以視情況而定

 

2.創建目錄和授權:

[root@Mike_Node-1 ~]# mkdir -p /data/mysql/data
[root@Mike_Node-1 ~]# mkdir -p /data/logs/mysql
[root@Mike_Node-1 ~]# mkdir -p /data/logs/tmp
[root@Mike_Node-1 ~]# useradd mysql
[root@Mike_Node-1 ~]# chown -R mysql:mysql /data/mysql
[root@Mike_Node-1 ~]# chown -R mysql:mysql /data/logs
[root@Mike_Node-1 ~]# chown -R mysql:mysql /data/tmp
[root@Mike_Node-1 ~]# chmod -R 775 /data/mysql
[root@Mike_Node-1 ~]# chmod -R 775 /data/logs
[root@Mike_Node-1 ~]# chmod -R 775 /data/tmp

創建數據庫目錄和賦予數據庫普通用戶權限

 

3.文件下載

[root@Mike_Node-1 ~]# yum search libaio
[root@Mike_Node-1 ~]# yum install libaio

上面的意思是檢測相關信息和安裝依賴包

[root@Mike_Node-1 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz                               ###MySQL下載

[root@Mike_Node-1 ~]# wget https://mirrors.ustc.edu.cn/mariadb//mariadb-10.3.27/bintar-linux-x86_64/mariadb-10.3.27-linux-x86_64.tar.gz                ####MariaDB下載

上面分別是MySQL5.7版本和MariaDB10.3版本的下載地址,可以根據安裝需求來下載


4.解壓文件

[root@Mike_Node-1 ~]# tar zxvf mariadb-10.3.24-linux-x86_64.tar.gz -C /usr/local/
[root@Mike_Node-1 ~]# cd /usr/local/
[root@Mike_Node-1 ~]# mv mariadb-10.3.24-linux-x86_64 mysql

這里已解壓 MariaDB 為例

下載完解壓到  /usr/local/ 目錄下,再重命名為 mysql 目錄,Mysql同樣的操作

 

5.設置mysql的配置文件

[root@Mike_Node-1 ~]# vim /etc/my.cnf

[client]
port = 3306
socket = /tmp/mysql.sock

 
         

[mysqld]
user = mysql
datadir = /data/mysql/data
pid-file = /data/mysql/mysql.pid
server-id = 50
relay_log =/data/logs/mysql/mysql_relay.log
bind-address = 0.0.0.0

 
         

tmpdir=/data/tmp
#當數據庫是大量存儲時建議指導TMP目錄,否則做全表操作時臨時空間會不足

 
         

init_connect ='SET NAMES utf8'
character-set-server = utf8
skip-name-resolve
back_log = 300

 
         

max_connections = 8019
max_connect_errors = 1024000
open_files_limit = 65535
table_open_cache = 2048
max_allowed_packet = 50M
max_heap_table_size = 512M
tmp_table_size = 256M

 
         

read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M
key_buffer_size = 512M
thread_cache_size = 128

 
         

query_cache_type = 2
query_cache_size = 128M
query_cache_limit = 5M
thread_stack = 192k
ft_min_word_len = 4

 
         

log_bin = /data/mysql/mysql_bin.log
binlog_format = ROW
expire_logs_days = 7

 
         

log_error = /data/logs/mysql/mysql_error.log
slow_query_log = 1
long_query_time = 1
log_slow_verbosity=query_plan
slow_query_log_file = /data/logs/mysql/mysql_slow.log
performance_schema = 0

 

skip-external-locking #跳過外部鎖定,避免external locking

 
         

bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1

 
         

###InnoDB###
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_open_files = 500
innodb_buffer_pool_size = 2048M
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_thread_concurrency = 16
innodb_purge_threads = 1
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 8M
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 10
innodb_autoinc_lock_mode = 2
innodb_doublewrite = 1
###New ADD
innodb_rollback_on_timeout = 1
innodb_force_recovery=0
interactive_timeout = 28800
wait_timeout = 120

 
         


[mysqldump]
quick
max_allowed_packet = 16M

 
         

[myisamchk]
key_buffer_size = 512M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M

上面是配置文件,可以根據自己的參數自行修改

 

6.初始化數據庫

[root@Mike_Node-1 ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=mysql
這是MariaDB初始化方式,初始化完會有OK提示

[root@Mike_Node-1 ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
這是MySQL初始化方式,初始化完,密碼在日志中查看MySQL5.7(/data/logs/mysql/中)


Installing MariaDB/MySQL system tables in '/data/mysql/data' ...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system


PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:

'/usr/local/mysql/bin/mysqladmin' -u root password 'new-password'
'/usr/local/mysql/bin/mysqladmin' -u root -h 127.0.0.1
100.100.0.164 password 'new-password'

Alternatively you can run:
'/usr/local/mysql/bin/mysql_secure_installation'

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the MariaDB Knowledgebase at http://mariadb.com/kb or the
MySQL manual for more instructions.

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/.
You can find additional information about the MySQL part at:
http://dev.mysql.com
Consider joining MariaDB's strong and vibrant community:
https://mariadb.org/get-involved/

上面是初始化 MariaDB數據庫的方式提示有OK就可以了~

MySQL的話初始化差不多,初始化完密碼會在日志中,而MariaDB則空密碼

 

7.設置啟動文件:

[root@Mike_Node-1 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

 

8.啟動數據庫:

[root@Mike_Node-1 ~]# /etc/init.d/mysql start
Starting mysql (via systemctl): [ OK ]


9.配置環境變量

[root@Mike_Node-1 ~]# vim /etc/profile

####在最后面添加
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

[root@Mike_Node-1 ~]# source /etc/profile

 

10.登錄數據庫

[root@Mike_Node-1 ~]# mysql

Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.3.24-MariaDB-log MariaDB Server

Copyright (c) 2000, 2020, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]> 
MariaDB [(none)]> set password =password('abc-123');                                                            #####修改root密碼為 abc-123
Query OK, 0 rows affected (0.001 sec) 

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> grant all privileges on *.* to root@'%' identified by 'abc-123' with grant option;            ####修改遠程root用戶權限和密碼  abc-123
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]>

這是mariadb登錄方式

mysql的話初始化會有密碼保存日志文件里,你需要到里面查看使用密碼登錄

MySQL密碼登錄   mysql -uroot -p 就可以了

 

11.再次登錄MySQL

[root@Mike_Node-1 ~]# mysql -uroot -p

然后就可以通過 Navicat客戶端登錄到數據庫方便操作

安裝到此結束

 

本文分享完畢,感謝支持點贊~~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM