MySQL5.7.22 二进制安装教程

首先上传安装包
mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

目录规划

datadir(数据文件目录):	   	   	 /mysqldata/data
basedir(软件安装目录):			 /var/lib/mysql
binlog目录(存放binlog日志):     /mysqldata/binlog

系统配置

关闭SELINUX
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
关闭服务器防火墙
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
建立组和用户
/usr/sbin/groupadd -g 2000 mysql
/usr/sbin/useradd -g mysql -u 2000 mysql
配置hosts文件
vim /etc/hosts
192.168.1.218   mysql_a
配置Limits
cat>>/etc/security/limits.conf<<EOF
mysql   soft   nofile    4096
mysql   hard   nofile    65536
mysql   soft   nproc     4095
mysql   hard   nproc     16384
mysql   soft   stack     10240
mysql   hard   stack     32768
EOF
修改进程数限制
cat>>/etc/security/limits.d/90-nproc.conf<<EOF
mysql soft nproc 4095
mysql hard nproc 16384
EOF
系统内核参数调整
vim /etc/sysctl.conf
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 965317
kernel.shmmax = 3163150745
fs.aio-max-nr = 1048576
vm.swappiness= 0
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.ip_local_port_range = 1024 65500
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_max_tw_buckets = 8000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10

kernel.shmall 的值可以通过如下命令计算:
echo "`cat /proc/meminfo | grep "MemTotal" | awk '{print $2}'` / (`getconf PAGESIZE` / 1024)" | bc
kernel.shmmax 的值可以通过如下命令计算:
echo "`cat /proc/meminfo | grep "MemTotal" | awk '{print $2}'` * 1024 * 0.8" | bc  | sed 's#\..*$##'

目录创建

参考上面目录规划创建目录
mkdir -p /mysqldata/data 
mkdir -p /mysqldata/binlog/
mkdir -p /mysqldata/relay-bin
chown -R mysql:mysql /mysqldata
chown -R mysql:mysql /mysqldata/binlog/
chown -R mysql:mysql /mysqldata/relay-bin

安装MySQL 5.7.22

安装与卸载依赖包
yum remove -y mariadb-libs-*
yum remove -y mysql-libs-*
yum -y install wget cmake gcc gcc-c++ ncurses  ncurses-devel libaio-devel openssl openssl-devel
解压二进制包
tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /var/lib/
cd /var/lib/
mv mysql-5.7.22-linux-glibc2.12-x86_64/ mysql/
chown -R mysql:mysql /var/lib/mysql
建立参数文件
vim /etc/my.cnf
[mysql]
port                           = 3306
socket                         = /mysqldata/data/mysql.sock
default_character_set          = utf8mb4
[mysqld]
user                           = mysql
port                           = 3306
default_storage_engine         = InnoDB
character_set_server           = utf8mb4
collation_server 			   = utf8mb4_unicode_ci
explicit_defaults_for_timestamp= true
transaction_isolation          = READ-COMMITTED
socket                         = /mysqldata/data/mysql.sock
pid_file                       = /mysqldata/data/mysql.pid
wait_timeout                   = 31536000
interactive_timeout            = 31536000
datadir                        = /mysqldata/data
basedir                        = /var/lib/mysql
log_bin                        = /mysqldata/binlog/mysql-bin
expire_logs_days               = 7
sync_binlog                    = 1
server_id                      = 1
relay_log                      = /mysqldata/relay-bin
innodb_log_group_home_dir      = /mysqldata/data
innodb_log_file_size           = 128M
innodb_buffer_pool_size        = 2G
innodb_buffer_pool_instances   = 4
innodb_undo_directory          = /mysqldata/data
innodb_undo_tablespaces        = 2
log_error                      = /mysqldata/data/mysql-error.log
gtid_mode                      = on
enforce_gtid_consistency       = 1
初始化数据库
/var/lib/mysql/bin/mysqld --defaults-file=/etc/my.cnf --user=mysql --datadir=/mysqldata/data --initialize
原始密码会在err_log中
tail -100 /mysqldata/data/mysql-error.log

在这里插入图片描述

配置环境变量
vim /etc/profile
export PATH=/var/lib/mysql/bin:$PATH
source /etc/profile
启动数据库
/var/lib/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
登录数据库(输入上面日志中的密码)
mysql -uroot -p

修改密码
set password for root@localhost = password('mysql');
flush privileges;
配置Service脚本
su - root
cp /var/lib/mysql/support-files/mysql.server /etc/init.d/mysqld 
chmod +x /etc/init.d/mysqld
编辑脚本,修改下面3个地方。
su - root
vi /etc/init.d/mysqld
basedir=/var/lib/mysql
datadir=/mysqldata
mysqld_pid_file_path=/mysqldata/data/mysql.pid
测试服务
service mysqld stop
service mysqld start
配置开机自启动(可选)
chkconfig mysqld on

安装完成

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要进行MySQL 5.7的二进制安装,可以按照以下步骤进行操作: 1. 首先,将MySQL二进制包解压到/usr/local目录下。你可以使用以下命令: ``` tar xf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ ``` 2. 接下来,配置启动文件并启动MySQL。你可以使用以下命令: ``` cp support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld on service mysqld start ``` 3. 然后,需要初始化MySQL。根据你的操作系统不同,可以使用不同的命令进行安装。如果是CentOS系统,使用以下命令: ``` cd /usr/local/mysql yum -y install libaio* ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/app/mydata/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp ``` 如果是Ubuntu系统,使用以下命令: ``` cd /usr/local/mysql apt-get -y install libaio-dev ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/app/mydata/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp ``` 这些步骤将会安装并初始化MySQL 5.7的二进制版本。请确保按照指定的路径和命令进行操作,以确保安装过程顺利完成。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [MySQL5.7 二进制安装](https://blog.csdn.net/weixin_68330286/article/details/124588446)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值