Linux CentOS 8 安装 Mysql8.0
安装mysql8.0
Linux安装mysql8.0的方式有两种
1.用yum安装
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm # 下载rpm包
yum localinstall mysql80-community-release-el7-1.noarch.rpm # 安装处理相关依赖
yum install mysql-community-server # 安装mysql服务
2.用163的源,分开安装
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-common-8.0.18-1.el7.x86_64.rpm
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-libs-8.0.18-1.el7.x86_64.rpm
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-client-8.0.18-1.el7.x86_64.rpm
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-server-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm
配置大小写敏感(根据自己的要求自行配置)
因为从mysql8.0官方文档里说,mysql8的大小写敏感的配置只有在初始化时才会生效,所以必须在mysql初始化的时候配置。
配置如下:
vim /etc/my.cnf
在my.cnf配置文件里加上
lower_case_table_names = 1 #0:对大小写敏感,1:对大小写不敏感
启动初始化Mysql
systemctl start mysqld.service
mysql第一次启动的时候会初始化,如果启动失败可能是data文件没有清理。
在my.cnf里找你data文件的存放路径,mysql8的默认路径在/var/lib/mysql清理掉这里面的文件即可
查看Mysql默认密码
cat /var/log/mysqld.log | grep password
在日志里可以看到mysql启动时生成的默认密码。
登录
mysql -uroot -p # 回车,输入你查看的默认密码即可(注:输密码的时候光标是不会动的)
第一次登陆的时候需要修改密码才能查看数据库
alter user 'root'@'localhost' identified with mysql_native_password by '密码';
设置外网访问
修改连接权限
修改root账号的Host,便于IP连接
use mysql; #mysql的基础表
update user set Host = '%' where User='root'; # 正式环境,可以创建新的Mysql账号,设置成具体的ip
授权远程连接
输入授权命令
grant all on *.* to 'root'@'%';#正式环境,可以创建新的Mysql账号,以及规定具体权限
如果还是访问不了,可能是防火墙没有打开对应的端口3306
参考:https://www.linuxidc.com/Linux/2019-11/161599.htm