Centos7离线安装MySQL

Posted dkbnull

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7离线安装MySQL相关的知识,希望对你有一定的参考价值。

使用tar.gz文件安装mysql

1、下载MySQL离线包

下载地址:https://downloads.mysql.com/archives/community/
根据需要下载对应版本tar.gz文件,下载完成后上传到服务器

2、解压tar.gz文件

tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz


等待解压完成。
解压后文件名太长,为方便使用,重命名。

mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql

3、创建MySQL用户和用户组

这里可以参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html

#创建mysql用户组
groupadd mysql

#创建一个用户名为mysql的用户,并加入mysql用户组
useradd -s /bin/nologin -g mysql mysql

#设置密码
passwd mysql

4、配置文件

mysql启动时默认加载的配置文件为 /etc/my.cnf,可以在启动命令后使用参数 –defaults-file 来指定自定义配置文件,这里我们就放置在默认目录

自定义配置文件配置项时,需手动创建对应的文件或文件夹,例如设置datadir=/usr/local/mysql/data ,则需先在对应目录下创建 data 文件夹
my.cfg

[client]
port=3306

[mysql]
no-beep

[mysqld]
port=3306
datadir=/usr/local/mysql/data
default-storage-engine=INNODB
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

log-output=FILE
general-log=0
general_log_file="DESKTOP-EI1GSRR.log"
slow-query-log=1
slow_query_log_file="DESKTOP-EI1GSRR-slow.log"
long_query_time=10
log-error="DESKTOP-EI1GSRR.err"
relay_log="DESKTOP-EI1GSRR-relay"
server-id=1
report_port=3306
lower_case_table_names=1
max_connections=151
table_open_cache=2000
tmp_table_size=101M
thread_cache_size=10
myisam_max_sort_file_size=100G
myisam_sort_buffer_size=192M
key_buffer_size=8M
read_buffer_size=64K
read_rnd_buffer_size=256K
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=8M
innodb_log_file_size=48M
innodb_thread_concurrency=17
innodb_autoextend_increment=64
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_old_blocks_time=1000
innodb_open_files=300
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
back_log=80
flush_time=0
join_buffer_size=256K
max_allowed_packet=4M
max_connect_errors=100
open_files_limit=4161
sort_buffer_size=256K
table_definition_cache=1400
binlog_row_event_max_size=8K
sync_master_info=10000
sync_relay_log=10000
sync_relay_log_info=10000

mysql-server.cnf

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
user=mysql
tmpdir=/tmp

5、初始化MySQL

cd /usr/local/mysql/bin
mysqld --initialize

如果报如下错,是因为系统默认会查找/usr/bin下的命令,由于mysql没有在这个目录下,所以报not found。因此需要做一个软连接到/usr/bin目录下
-bash: mysqld: command not found

cd /usr/bin
ln -s /usr/local/mysql/bin/mysqld /usr/bin

然后再初始化即可,这里同时会打印数据库初始密码,记下来

6、设置权限

chown -R mysql:mysql mysql
chmod 750 mysql

7、启动MySQL服务

启动文件位于mysql根目录下 support-files/mysql.server ,将该文件拷贝到 init.d 下即可使用centos的 service mysql [option] 来管理mysql的运行。

cp support-files/mysql.server /etc/init.d/mysqld

启动服务

#启动服务
service mysqld start

#停止服务
service mysqld stop

#重启服务
service mysqld restart

如果启动报错如下的话,我们自己创建一个


内容就写上个pid值,比如3666500

以上是关于Centos7离线安装MySQL的主要内容,如果未能解决你的问题,请参考以下文章

centos7 安装MySQL7 并更改初始化密码

CentOs7下安装mysql5.7.14,初始化完成登录mysql提示密码过期

centos7安装mysql5.7修改设置密码策略

Centos7.3下mysql5.7.18安装并修改初始密码的方法

centos7.2 安装mysql8.0.11 并自动初始化root密码

离线安装系列3:在CentOS7下离线安装mysql5.7