Centos 7安装mysql

Centos 7安装mysql

环境准备

删除系统自带mariadb

yum remove -y mariadb

检测是否有MYSQL包

rpm -qa | grep mysql 
#####有的话就删除
rpm -qa | grep mysql  | xargs  yum -y remove

检测是否有残留文件

ls /etc/my.cnf 
#####有就删除
rm -rf /etc/my.cnf
which mysql         // ------------ 检查 是否有客户端

which mysqld        // ------------ 检查 是否有服务端

完成

下载官方的 MySQL 安装包

进入官网下载自己系统对应版本

https://repo.mysql.com/“

将下载 好的 安装包 上传到 Linxu上

[root@localhost yum.repos.d]# ll
总用量 64
-rw-r--r--. 1 root root  2523 12月 17 17:06 CentOS-Base.repo
-rw-r--r--. 1 root root  1309 12月  9 2015 CentOS-CR.repo
-rw-r--r--. 1 root root   649 12月  9 2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root   290 12月  9 2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root   630 12月  9 2015 CentOS-Media.repo
-rw-r--r--. 1 root root  1331 12月  9 2015 CentOS-Sources.repo
-rw-r--r--. 1 root root  1952 12月  9 2015 CentOS-Vault.repo
-rw-r--r--. 1 root root   951 10月  3 2017 epel.repo
-rw-r--r--. 1 root root  1050 10月  3 2017 epel-testing.repo
-rw-r--r--. 1 root root 25680 12月 17 18:37 mysql57-community-release-el7.rpm   《====
[root@localhost yum.repos.d]#rpm -ivh mysql57-community-release-el7.rpm
###解压生成yum仓库
[root@localhost yum.repos.d]# ls
CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo  mysql57-community-release-el7.rpm
CentOS-CR.repo         CentOS-Media.repo      epel.repo          mysql-community.repo
CentOS-Debuginfo.repo  CentOS-Sources.repo    epel-testing.repo  mysql-community-source.repo

开始安装 MySQL

安装

yum install -y mysql-community-server
跳过校验直接安装:
yum install -y mysql-community-server --nogpgcheck

检测是否安装成功

启动MYSQL

启动

systemctl start mysqld
#####检测是否启动成功
ps ajx | grep mysqld

登录 MySQL

没有密码无法登录

调整配置文件,采用无密码登录

vi /etc/my.cnf  
####增加最后一行

保存退出

systemctl restart mysqld
#####重新启动

给MySQL 做一些配置

为了 防止后期 ,MySQL 出现编码问题 ,我们需要对编码,进行配置

vim /etc/my.cnf 

######
port=3306
character-set-server=utf8
default-storage-engine=innodb

修改root密码

先以无密码登录数据库

-- 对于 MySQL 5.7.6 及更高版本
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;

-- 对于旧版本
UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;

成功后注释最后一句

重启登录数据库

密码策略

mysql初始化密码常见报错问题
mysql5.6是密码为空直接进入数据库的,但是mysql5.7就需要初始密码

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

然后执行 mysql -uroot -p ,输入上面的到的密码进入,用该密码登录后,必须马上修改新的密码,不然会报如下错误:

mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

##如果你想要设置一个简单的测试密码的话,比如设置为123456,会提示这个错误,报错的意思就是你的密码不符合要求

mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

validate_password_length(密码长度)参数默认为8,我们修改为1

mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

完成之后再次执行修改密码语句即可成功

mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
posted @ 2025-03-19 10:27  DYF-linux  阅读(138)  评论(0)    收藏  举报