Centos7-预编译安装mysql5.7.32(单节点)

预编译安装mysql5.7.32

官方文档:http://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
1、下载预编译包
mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
2、准备环境
创建用户、组

[root@node4 ~]# groupadd mysql
[root@node4 ~]# useradd -r -g mysql -s /bin/false mysql

解压预编译包

[root@node4 ~]# tar xf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz  -C /usr/local/

创建软连接

[root@node4 ~]# cd /usr/local/
[root@node4 local]# ln -s mysql-5.7.32-linux-glibc2.12-x86_64 mysql

3、Mysql初始化

[root@node4 local]# cd mysql
[root@node4 mysql]# mkdir mysql-files
[root@node4 mysql]# chmod 750 mysql-files
[root@node4 mysql]# chown -R mysql .
[root@node4 mysql]# chgrp -R mysql .
[root@node4 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  (保存初始密码)
[root@node4 mysql]# bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
[root@node4 mysql]# chown -R root .
[root@node4 mysql]# chown -R mysql data mysql-files

4、编辑配置文件,根据需求配置

[root@node4 mysql]# cat /etc/my.cnf
[mysqld]                    #服务端
basedir=/usr/local/mysql    #软件安装目录
datadir=/usr/local/mysql/data   #数据库数据存放目录
log_error = /usr/local/mysql/mysql-error.log #错误日志路径
user=mysql                   #mysql用户
socket=/tmp/mysql.sock       #socket文件存放位置
server-id = 1 #表示是本机的序号为1
default-storage-engine = InnoDB #默认存储引擎
character_set_server=utf8   #设置默认字符编码
collation-server=utf8_general_c  #设置字符编码,不区分大小写, utf8_bin区分大小写
loose-default-character-set =utf8 #以后创建的所有数据库或者表都是默认的utf8
max_connections = 1000  #数据库最大连接(可以过'conn%'通配符查看当前状态的连接数量,以定夺该值的大)
log_bin = mysql-bin   #开启binlog日志
expire_logs_days = 30 #超过30天的binlog删除
slow_query_log = 1  #开启慢查询
long_query_time = 10 #慢查询时间超过10秒则为慢查询
slow_query_log_file = /usr/local/mysql/mysql-slow.log  #慢查询日志路径
innodb_thread_concurrency = 0 # 默认设置为 0,表示不限制并发数,这里推荐设置为0,更好去发挥CPU多核处理能力,提高并发量 

innodb_file_per_table = 1 #表示独立表空间(优点:每个数据库的每个表都会生成一个数据空间;每个表都有自已独立的表空间;每个表的数据和索引都会存在自已的表空间中;可以实现单表在不同的数据库中移动;空间可以回收(除drop table操作处,表空不能自已回收);缺点:单表增加过大,如超过100G;共享表空间在Insert操作上少有优势。其它都没独立表空间表现好。当启用独立表空间时,请合理调整:innodb_open_files限制Innodb能打开的表的数据,如果库里的表特别多的情况,请增加这个	innodb_open_files = 500)

[mysql]                       #客户端 
socket=/tmp/mysql.sock 

5、Centos7配置启动mysqld服务

[root@node4 mysql]# cat /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(5.7)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
[root@node4 mysql]#

6、配置环境变量

[root@node4 mysql]# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@node4 mysql]# source /etc/profile

7、启动数据库

[root@node4 mysql]# systemctl start mysqld.service
[root@node4 mysql]# ss -ltnp | grep 3306
LISTEN     0      80        [::]:3306                  [::]:*                   users:(("mysqld",pid=1300,fd=16))

验证是否能够登录数据库

[root@node4 mysql]# Mysql -uroot -p'初始化提示的初始密码'

8、初始化数据库(可选),初始化后数据库恢复到初始安装,注意保存数据

[root@node4 mysql]# systemctl stop mysqld
[root@node4 mysql]# rm -rf /usr/local/mysql/data 
[root@node4 mysql]# chown -R mysql . 
[root@node4 mysql]# chgrp -R mysql . 
[root@node4 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql 
--datadir=/usr/local/mysql/data (保存初始换数据库root密码)
[root@node4 mysql]# bin/mysql_ssl_rsa_setup 
[root@node4 mysql]# chown -R root . 
[root@node4 mysql]# chown -R mysql data mysql-files 

启动服务

[root@node4 mysql]# systemctl start mysqld

验证

[root@node4 mysql]# Mysql -uroot -p

创建数据库:

create database ceshi default character set utf8 collate utf8_general_ci;      

创建账号并授权:

grant all on ceshi.* to 'ceshi'@'%' identified by 'Cs@123456';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值