CentOS8.0 安装mysql8.0.23

最近要在centos8.0下面安装一个mysql作为测试环境数据库,遇到一些坑,记录一下正确打开方式

1、官网下载mysql集成安装包,并解压

mysql-8.0.23-1.el8.x86_64.rpm-bundle.tar

2、检查是否安装过mariadb,有的话移除

rpm -qa | grep -i mariadb
rpm -e --nodeps ……

3、依次安装客户端common,libs,client,server

  • rpm -ivh mysql-community-common-8.0.23-1.el8.x86_64.rpm
  • rpm -ivh mysql-community-libs-8.0.23-1.el8.x86_64.rpm
  • rpm -ivh mysql-community-client-8.0.23-1.el8.x86_64.rpm
  • rpm -ivh mysql-community-server-8.0.23-1.el8.x86_64.rpm

此处有坑,warning: mysql-community-server-8.0.23-1.el8.i686.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

遇到此坑在rpm语句后面加上--force --nodeps即可正常安装;
参考链接

4、常用的环境配置

安装成功后打开/etc/my.cnf,加上lower_case_table_names=1,该配置不区分数据表大小写(mysql在linux下默认区分)

5、初始化mysql

mysqld --initialize

此处可能会报错:mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

需安装libaio相关包:yum install -y libaio

6、启动mysql服务

systemctl start mysqld

此处也有坑,启动失败,因为默认安装的/var/lib/mysql目录权限不够

chown -R mysql:mysql /var/lib/mysql/

随后启动成功

7、查看初始化生成的root密码并使用初始密码登录

cat /var/log/mysqld.log | grep password

mysql -uroot -p

此处也有坑,登陆后需立即用alter user修改密码,否则报错:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement

ALTER USER "root"@"localhost" IDENTIFIED BY "自己的密码";

8、使用新密码登录并设置远程连接

use mysql;

update user set host = '%' where user ='root';

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password;#更改加密方式

ALTER USER "root"@"%" IDENTIFIED BY "123456";#更改加密方式后从新设置一下密码

ALTER USER 'root'@'%' PASSWORD EXPIRE NEVER;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值