ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

备忘录(005) - Centos8安装配置MySQL8.0.26

2021-07-28 15:01:22  阅读:269  来源: 互联网

标签:26 apps MySQL8.0 usr 005 mysql mysql8.0 local


1、从官网下载MySQL离线包

MySQL8.0.26下载url:
https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz

2、上传离线包到centos8的opt目录

3、创建apps目录

mkdir /usr/local/apps

4、解压压缩包到apps目录并重命名MySQL文件夹

解压压缩包到指定目录下
tar -xvf /opt/mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz -C /usr/local/apps

重命名文件夹
mv /usr/local/apps/mysql-8.0.26-linux-glibc2.12-x86_64 /usr/local/apps/mysql8.0.26

5、配置环境变量

将字符串以追加的方式写入文件
echo -e " export MYSQL_HOME=/usr/local/apps/mysql8.0.26\n export PATH=\${PATH}:\${MYSQL_HOME}/bin\n" >> /etc/profile

让修改后的配置立即生效
source /etc/profile

6、创建MySQL配置文件

进入mysql文件夹
cd /usr/local/apps/mysql8.0.26

从gitee下载配置文件
wget https://gitee.com/DragonYmqx/source/raw/master/properties/my.cnf
my.cnf的内容(也可以手动创建my.cnf文件,并复制以下内容)
[mysqld]
 # 设置3306端口
 port=3306
 # 设置mysql的安装目录
 basedir=/usr/local/apps/mysql8.0.26
 # 设置mysql数据库的数据的存放目录
 datadir=/usr/local/apps/mysql8.0.26/data
 # 指定存放进程ID的文件
 pid_file=/usr/local/apps/mysql8.0.26/data/mysql.pid
 # 指定错误日志路径
 log_error=/usr/local/apps/mysql8.0.26/data/mysql.error
 # 允许最大连接数
 max_connections=10000
 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
 max_connect_errors=10
 # 服务端使用的字符集默认为UTF8MB4
 character-set-server=utf8mb4
 # 创建新表时将使用的默认存储引擎
 default-storage-engine=INNODB
 # 默认使用“mysql_native_password”插件认证
 default_authentication_plugin=mysql_native_password
 [mysql]
 # 设置mysql客户端默认字符集
 default-character-set=utf8mb4
 [client]
 # 设置mysql客户端连接服务端时默认使用的端口
 port=3306
 default-character-set=utf8mb4

7、创建系统组和角色mysql

创建组mysql
groupadd mysql

创建角色mysql并加入mysql组
useradd -g mysql mysql

8、修改MySQL8.0.26文件夹的所有者和权限

设置mysql组的mysql角色为mysql8.0.26文件夹的所有者
chown mysql:mysql -R /usr/local/apps/mysql8.0.26

修改mysql8.0.26文件夹的权限
chmod -R 755 /usr/local/apps/mysql8.0.26

9、检查是否存在libtinfo.so.5,不存在则创建链接

find /usr/lib64 -name "libtinfo.so.5"

如果没有找到,说明不存在,则需要创建链接(注意centos版本,其他的版本有可能libtinfo.so的版本号不是6.1)
cd /usr/lib64												(进入libtinfo.so的目录)
ll -h |grep libtinfo.so											(查找libtinfo.so)
ln -s libtinfo.so.6.1 libtinfo.so.5									(创建libtinfo.so.5的软链接指向存在的libtinfo.so文件)

10、初始化MySQL(需要记录生成的随机密码)

进入mysql可执行文件目录bin
cd /usr/local/apps/mysql8.0.26/bin

以系统角色mysql初始化MySQL8.0.26并将输出信息打印在控制台
./mysqld --console --initialize --user=mysql

注意:执行该初始化操作有可能日志信息不会输出到控制台,需要到生成的data目录下的mysql.error查看日志信息
cd /usr/local/apps/mysql8.0.26/data            (生成的data文件夹由配置文件my.cnf指定)
cat mysql.error	                               (生成的mysql.error文件由配置文件my.cnf指定)


供参考的日志信息(大部分已省略,这里主要展示随机密码的部分):
2021-07-28T04:11:30.657089Z 0 [System] [MY-013169] [Server] /usr/local/apps/mysql8.0.26/bin/mysqld (mysqld 8.0.26) initializing of server in progress as process 61957(开始部分)
......(中间部分 此处省略输出信息)
......
2021-07-28T04:11:33.969715Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: RwHUa/xz1S22 (此处是生成的随机密码,格式为root@localhost: 密码)
......
......(中间部分 此处省略输出信息)
2021-07-28T04:12:03.404440Z 0 [System] [MY-010910] [Server] /usr/local/apps/mysql8.0.26/bin/mysqld: Shutdown complete (mysqld 8.0.26)  MySQL Community Server - GPL.(结尾部分)

11、守护模式启动mysql(以后台方式运行)

/usr/local/apps/mysql8.0.26/bin/mysqld_safe &       (执行该指令后需要回车进入下一步操作)

12、登录mysql并修改登录密码

登录mysql
mysql -uroot -p"随机密码"                      (注意:冒号里的是生成的随机密码,而不是随机密码这四个字)

修改登陆密码
alter user 'root'@'localhost' identified by 'root';
刷新
flush privileges;

标签:26,apps,MySQL8.0,usr,005,mysql,mysql8.0,local
来源: https://www.cnblogs.com/ymqxsky/p/15070494.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有