Centos7安装MySQL8

本文档详述了在CentOS7上安装MySQL8.0的步骤,包括下载repo文件,安装repo,移除旧版本MySQL,配置字符集,修改口令策略,创建数据库和用户,以及设置开机启动服务。同时,还提供了验证远程连接和Python脚本测试的示例。
摘要由CSDN通过智能技术生成

Centos7下安装MySQL8

mysql的repo

因为centos没有mysql的仓库安装源,需要从mysql官网下载。

repo下载页面 https://dev.mysql.com/downloads/repo/yum/ ,在此页面选择合适的版本。

如下,选择centos7下的mysql8.0:

wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm

下载成功后,将repo进行安装

yum install -y mysql80-community-release-el7-5.noarch.rpm

安装repo成功后,会在/etc/yum.repos.d/目录下产生两个repo文件

[root@localhost yum.repos.d]# ls -l |grep mysql
-rw-r--r--. 1 root root 2062 1月  13 03:00 mysql-community.repo
-rw-r--r--. 1 root root 2132 1月  13 03:00 mysql-community-source.repo

或者通过以下命令查看mysql相关的仓库:

[root@localhost yum.repos.d]# yum repolist enabled|grep mysql
!mysql-connectors-community/x86_64 MySQL Connectors Community                230
!mysql-tools-community/x86_64      MySQL Tools Community                     137
!mysql80-community/x86_64          MySQL 8.0 Community Server                321

安装mysql8

安装mysql之前,先检查当前系统是否已安装

yum remove  mysql mysql-server mysql-libs mysql-server # 快速删除
rpm -qa|grep -i mysql  # 查找残留文件
yum remove <文件名> # 逐个删除残留文件
whereis mysql  # 查找残留目录
rm –rf <残留目录> # 删除残留目录

以上命令执行完成后,可以尝试安装mysql8

yum install -y mysql-community-server

安装成功后,可以尝试启动服务。

systemctl start mysqld

【注意】启动服务器可能需要一些时间,稍等一会。

启动成功后,查看mysql服务状态:

systemctl status mysqld

修改mysql的配置

安装mysql之后,默认的配置文件是 /etc/my.cnf, 在配置文件中,[mysqld]是配置服务器相关的选项,[mysql]是客户端选项的配置。

官方的配置项地址:https://dev.mysql.com/doc/refman/8.0/en/

字符集配置

[mysqld]位置配置服务器的字符集:

[mysqld]
....
character-set-server = utf8

[mysql]
default-character-set = utf8

配置OK之后,需要重启服务器

systemctl restart mysqld

验证口令配置

默认情况下,创建用户名或修改口令时,需要遵循默认策略。

以下配置是取消默认策略

[mysqld]
validate_password.check_user_name   = OFF
validate_password.length            =4
validate_password.mixed_case_count  =0
validate_password.number_count      =0
validate_password.policy            =0
validate_password.special_char_count=0

同样,修改配置文件之后,需要重启mysql服务。

修改root口令

查看初始root用户的临时口令

[root@localhost yum.repos.d]# grep "password" /var/log/mysqld.log
2022-02-25T16:49:30.479822Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Lltw1YfZ5X(G

【注】l是L字母的小写。 1是数字1。

使用临时口令和mysql客户端工具登录到mysql服务器

mysql -uroot -p

执行以上命令后,等待password:出现,输入Lltw1YfZ5X(G临时口令。输入口令时是不显示地。

进入mysql交互环境后,执行以下命令:

mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'root'; 

修改成功后,退出mysql交互环境,再次尝试登录。

mysql -uroot -proot

创建库和用户

创建数据库

进入mysql交互环境后,可以通过以下命令创建数据库:

mysql> create database test1db;

打开数据库

mysql> use test1db;

显示库中的表

mysql> show tables;

新创建的库是没有空的。

创建用户

在mysql交互环境中,用户信息包含 用户名和主机名host。因此创建用户时,用户信息是用户名@主机,如果只是本地连接数据库,默认是localhost,如果允许所有客户端(远程)连接,可以是%通配配符。

执行如下sql语句,创建disen用户并授权操作test1db数据库:

create user 'disen'@'%' identified with mysql_native_password by 'disen123456';
grant all privileges on test1db to disen;
flush privileges;

远程连接测试

可以编写一个python脚本(文件名任意命名,如test1.py),运行后并打印OK即可。

【注】先安装pymysql库,通过pip install pymysql

import pymysql

conn = pymysql.Connect(host="localhost",port=3306, user="disen",passwd="disen123456", db="test1db")

print('OK')     

运行测试脚本

python3 test1.py

开机启动服务

默认情况下,重启linux之后,mysql服务不能自动启动。

通过以下命令自动开启服务

systemctl enable mysqld

当然,也可以禁用开机启动服务

systemctl disable mysqld
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值