linux安装MySql8.0.版本,少踩坑

按照这个做基本不踩坑,其中的目录可以根据自己的喜好修改,目录名和目录位置没有固定要求。可以直接在根目录下创建目录,mkdir mysql_data 并且创建/mysql_data/data用来存放数据,注意如果目录更改,my.cnf配置文件的目录也要修改

下载MySql:

下载地址:https://dev.mysql.com/downloads/mysql/
在这里插入图片描述

可通过地址下载,亦可以通过wget命令下载

#在linux终端执行命令在

cd /opt/

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz

#xz文件先用xz命令处理
xz -d mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz

#然后用tar命令解压,并移动到/usr/local
tar -xvf mysql-8.0.29-linux-glibc2.12-x86_64.tar

#更文件名‘mysql-8.0.21-linux-glibc2.12-x86_64’ 改为 ‘mysql-8.0.21’
mv mysql-8.0.29-linux-glibc2.12-x86_64 /usr/local/mysql-8.0.29

cd /usr/local/mysql-8.0.29/

#创建data目录存放数据
mkdir data

创建用户(目的是授权):

#创建用户组mysql
groupadd mysql

#创建用户mysql
useradd -g mysql mysql

#设置拥有者为mysql,就是授权
chown -R mysql:mysql /usr/local/mysql-8.0.29/

初始化:

cd /usr/local/mysql-8.0.21/

#初始化命令,为了初始化mysql获得初始化登入密码
./bin/mysqld --user=mysql --basedir=/usr/local/mysql-8.0.21/ --datadir=/usr/local/mysql-8.0.21/data/ --initialize

得到随机的初始密码:09es%uXb/,N>
在这里插入图片描述

vim /etc/my.cnf

#进入文件后,安o开始编辑,datadir设置数据存放目录,basedir基本安装目录,
#socket设置套接词用于远程连接,port是访问端口,log-error日志文件,
#pif-file文件记录的是当前 mysqld 进程的 pid,pid 亦即 Process ID。
#注意:如果目录更改,datadir和basedir的目录也要修改
[mysqld]
datadir=/usr/local/mysql-8.0.29/data
socket=/tmp/mysql.sock
basedir=/usr/local/mysql-8.0.29
port=3306
character-set-server=UTF8MB4
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql-8.0.29/mysql.pid

初始化MySQL服务

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

#授权
chmod +x /etc/init.d/mysql

#添加服务
chkconfig --add mysql

#启动服务
service mysql start

#停止服务
service mysql stop

登入mysql

#必须先创建软连接
ln -s /usr/local/mysql-8.0.29/bin/mysql /usr/bin/

#登入,如果登入是出现mysql未知命令,就说明上一步软连接有问题,
#请根据文件删除原来的/usr/bin/mysql(rm -i mysql,然后再输入yes),
#然后再重新创建软连接。
mysql -uroot -p
#然后根据提示输入之前生成的随机密码
#这里密码每个人都会不同,要根据自己生成的密码输入

#登录成功后,修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345678';

#使配置生效
flush privileges;
#选择mysql数据库
use mysql;
#设置远程访问
update user set host='%' where user='root';
使配置生效
flush privileges;
#退出mysql
exit

防火墙开放3306端口

#编辑ssh.xml
vim /usr/lib/firewalld/services/ssh.xml 

#开放3306端口
<port protocol="tcp" port="3306"/> 

#重启防火墙 
systemctl restart firewalld

验证测试

可以使用navicat进行测试验证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值