目录
一、环境及版本介绍
二、安装前准备
三、开始安装
一、环境及版本介绍
Linux环境:Centos7
Mysql版本:8.0.26
安装时使用的用户:root
二、安装前准备
1.1、下载Centos7镜像
网上寻找相关资源即可
1.2、下载VMwareWorkstation Pro并安装Linux环境
网上寻找相关资源
1.3、下载Linux版的Mysql
下载地址:MySQL :: Download MySQL Community Server (Archived Versions)
三、开始安装
3.1、上传mysql文件至Linux环境
将下载的文件上传至Linux服务器如下目录:/usr/local/
3.2、解压
tar -xvf ./mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz
3.3、更改解压后的文件名称
sudo mv ./usr/local/mysql-8.0.26-linux-glibc2.12-x86_64/ ./usr/local/mysql-8.0.26
3.4、检查是否创建mysql组及mysql用户
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
3.5、如果没有则创建
groupadd mysql
useradd -g mysql mysql
3.6、进入mysql的安装文件夹,创建data文件夹
cd /usr/local/mysql-8.0.26/
mkdir data
3.7、给mysql安装文件夹和data文件夹赋予权限
# 安装目录赋予权限
[root@localhost mysql-8.0.26]# sudo chown -R 777 /usr/local/mysql-8.0.26/
# data文件夹赋予权限
[root@localhost mysql-8.0.26]# sudo chown -R 777 /usr/local/mysql-8.0.26/data/
3.8、配置mysql配置文件my.cnf
[root@localhost mysql-8.0.26]# sudo vi /etc/my.cnf
3.9、输入一下内容
[mysql] ([mysql]为必须,当前小括号中的内容可删除)
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld] ([mysqld]为必须,当前小括号中的内容可删除)
skip-name-resolve
#设置3306端口
port = 3306
# 设置mysql的安装目录:
basedir=/usr/local/mysql-8.0.26
# 设置mysql数据库的数据的存放目录(刚刚新建的data目录)
datadir=/usr/local/mysql-8.0.26/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
3.10、设置进入mysql安装目录的bin目录,初始化数据库,并设置忽略表明大小写
[root@localhost mysql-8.0.26]# cd /usr/local/mysql-8.0.26/bin/
[root@localhost bin]# ./mysqld --initialize --console --lower-case-table-names=1
此时会返回如下信息:
返回如下信息:
2023-09-08T09:02:01.610795Z 0 [System] [MY-013169] [Server] /usr/local/mysql-8.0.26/bin/mysqld (mysqld 8.0.26) initializing of server in progress as process 4676
2023-09-08T09:02:01.627486Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-09-08T09:02:01.981156Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-09-08T09:02:02.514898Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1 is enabled for channel mysql_main
2023-09-08T09:02:02.515124Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1.1 is enabled for channel mysql_main
2023-09-08T09:02:02.543483Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: sgyOdI?pr3nW
其中sgyOdI?pr3nW是生成的临时密码,需要记录一下
3.11、设置config配置,修改SELINUX=disabled
[root@localhost bin]# sudo vi /etc/selinux/config
3.12、创建软连接
[root@localhost bin]# sudo ln -s /usr/local/mysql-8.0.26/bin/mysql /usr/bin/
以下是设置mysql的开机自启
3.13、因为使用的是root用户,固需要微调一下mysql安装目录下的support-files/mysql.server文件内容
[root@localhost bin] vi /usr/local/mysql-8.0.26/support-files/mysql.server
在266行, 执行start的命令,在【$bindir/mysqld_safe】 与 【--datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null】 新增 --user=root
3.14、拷贝mysql安装目录下的启动文件到/etc/init.d/下并重命名为mysqld,并增加执行权限
[root@localhost bin]# sudo cp /usr/local/mysql-8.0.26/support-files/mysql.server /etc/init.d/mysqld
[root@localhost bin]# sudo chmod 777 /etc/init.d/mysqld
3.15、添加服务
[root@localhost /]# sudo chkconfig --add mysqld
3.16、设置服务开机自动开启
[root@localhost /]# sudo chkconfig mysqld on
3.17、启动mysql
[root@localhost /]# service mysqld start
以下是登录mysql,修改密码,打开远程连接权限(即可以使用navicat等工具连接mysql)
3.18、登录mysql的root用户
[root@localhost /]# mysql -u root -p
3.19、输入刚保存的临时密码
3.20、设置新密码
mysql> set PASSWORD = '自己的mysql用户登录密码';
3.21、刷新使其生效
mysql> flush privileges;
3.22、修改远程连接并生效
update user set host='%' where user='root';
3.23、刷新使其生效
flush privileges;
3.24、查看防火墙
[root@localhost lib]# systemctl status firewalld
3.25、如果是开启,关闭
[root@localhost lib]# service firewalld stop
尝试用navicat连接即可
以下为补充命令:
查看muysql加载my.cnf的位置:
[root@localhost mysql-8.0.26]# mysql --help | grep 'my.cnf'
查看已经存在的my.cnf文件所在位置
locate my.cnf
whereis my.cnf