热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MySQL8.0.24内网部署

以CentOS-8-Runtime-x86_64.202109为例,其他也适用,何为“内网”,镜像都不给你挂载通用离线安装依赖lib库的套





以CentOS-8-Runtime-x86_64.202109为例,其他也适用,何为 “内网” ,镜像都不给你挂载



通用离线安装依赖lib库的套路

第一步:首先得找一个环境相同的联网的环境




第二步:使用将依赖下载下来(使用yum install --downloadonly --downloaddir=/root/soft/本地存储位置 模块名称),上传至离线环境安装



Demo:离线安装cmake所以需要的依赖(cmake源码包安装不在阐述)

yum install --downloadonly --downloaddir=/root/soft/gcc gcc
yum install --downloadonly --downloaddir=/root/soft/gcc++ gcc-c++
yum install --downloadonly --downloaddir=/root/soft/openssl-devel openssl-devel
rpm -ivh *.rpm --nodeps --force

进入正题

下载安装包



下载所需依赖:https://download.csdn.net/download/m0_59492087/86892733




下载cmake,地址:https://cmake.org/files/v3.18/cmake-3.18.1.tar.gz




下载MySQL,注意:得是boost类型的源码包,地址:https://cdn.mysql.com/archives/mysql-8.0/mysql-boost-8.0.24.tar.gz



开始安装


  1. 解压cmake,进入解压目录,执行./configure 执行完成后,在执行make && make install 安装即可

  2. 创建MySQL用户并将MySQL用户加入到MySQL用户组中

groupadd mysql
useradd -s /sbin/nologin -g mysql mysql

  1. 创建MySQL数据目录和日志目录

mkdir /data/mysql

  1. 到MySQL的解压目录下执行编译命令

cmake -DCMAKE_INSTALL_PREFIX=/opt/app/mysql -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_UNIX_ADDR=/opt/app/mysql/mysql.sock -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_EXAMPLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_USER=mysql -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DFORCE_INSOURCE_BUILD=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/root/mysql-8.0.24/boost

  1. 上述命令执行完成后,执行安装命令

make && make install

  1. 修改配置文件


修改配置文件/etc/my.cnf


[mysqld]
datadir=/data/mysql/data
socket =/opt/app/mysql/mysql.sock
lower_case_table_names=1
character-set-server=utf8
collation-server=utf8_general_ci
skip-name-resolve
user=mysql
[client]
default-character-set=utf8
socket =/opt/app/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/opt/app/mysql
default-character-set=utf8
[mysqld_safe]
err-log=/data/mysql/log/mysqld.log

  1. 修改日志目录和数据目录以及安装目录的权限

chown -R mysql.mysql /data/mysql/

  1. 添加MySQL服务


进入到/opt/app/mysql/support-files执行以下命令


cp mysql.server /etc/rc.d/init.d/mysql

  1. 设置开机启动MySQL

chkconfig --add mysql
chkconfig mysql on

  1. 将MySQL命令加入到环境变量

ln -s /opt/app/mysql/bin/* /usr/bin/

  1. 初始化数据库

# 进入到/opt/app/mysql执行
mysqld --initialize --user=mysql --basedir=/opt/app/mysql --datadir=/data/mysql/data

在这里插入图片描述
记录MySQL的秘密。


  1. 启动MySQL服务

service mysql start

  1. 登录MySQL
    mysql -uroot 并回车粘贴密码即可。千万不要用-p指定密码。
    在这里插入图片描述
  2. 授予远程连接

use mysql;
update user set host='%' where user='root';
select host, user from user;
grant all privileges on *.* to 'root'@'%' ;
flush privileges ;

问题总结


使用mysqld --console 查看报错


  1. 安装cmake时可能遇到
    在这里插入图片描述

xz -d rpcsvc-proto-1.4.1.tar.xz
tar -xvf rpcsvc-proto-1.4.1.tar
cd rpcsvc-proto-1.4.1
./configure
make
make install

  1. mysql启动报错
    在这里插入图片描述
    进入文件:vim /etc/my.cnf
    在[mysqld]下输入内容:user=mysql

  2. mysql启动报错
    在这里插入图片描述


  • 删除/data/mysql/data目录
  • 在执行初始化数据库

  1. 登录报错Segmentation fault (core dumped)
    在这里插入图片描述
    解决方案:
    find / -name terminal.c
    找到这个文件后修改文件内容,并按照下面的修改
    在这里插入图片描述
  2. You must reset your password using ALTER USER statement before executing this statement

# 修改密码
alter user 'root'@'localhost' identified by '123456';






推荐阅读
author-avatar
锋仔
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有