在Linux centos7 上安装 Mysql

本文档详细介绍了如何在Linux CentOS7系统上安装MySQL5.7,包括下载安装包、安装源、启动服务、设置密码、开放端口、远程登录用户配置等步骤,并提供了遇到问题的解决方法。


注:普通用户执行以下命令需要命令最前面加上 sudo

1.下载mysql源安装包

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

2.安装Mysql源

yum localinstall mysql57-community-release-el7-8.noarch.rpm 

3.检查Mysql源是否安装成功

$ yum repolist enabled | grep "mysql.*-community.*"

4.安装Mysql

yum install mysql-community-server  #真正安装Mysql

注:这一步会需要很长时间
在这里插入图片描述

5.启动Mysql服务并设置开机自启动

systemctl start mysqld
systemctl enable mysqld
systemctl daemon-reload

6.开放3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

7.修改Root本地登录密码

7.1.查看Mysql初始密码
grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

7.2.连接Mysql
mysql -uroot -p

这一步可能会报错如下:
Access denied for user ‘root’@‘localhost’ (using password: YES)
在这里插入图片描述

上述错误的解决方法如下:

7.2.1.编辑/etc/my.cnf文件

打开/etc/my.cnf文件

vim /etc/my.cnf 

在/etc/my.conf文件的末尾添加如下内容:


skip-grant-tables  #跳过密码验证
7.2.2.保存对文件的修改后,重启Mysql
service mysqld restart 
7.2.3.重新连接Mysql
mysql -uroot -p mysql 

8.重新设置密码

在Mysql中输入如下命令:

#其中password()中的'root'可以换成你自己想要设置的密码
update mysql.user set authentication_string=password('root') where user='root';

9.刷新权限

在Mysql中输入如下命令:

flush privileges;

10.退出Mysql,并删掉7.2.1步中向/etc/my.cnf中添加的内容

要退出Mysql,在Mysql中输入:

qiut;

删除7.2.1步中向/etc/my.cnf中添加的内容

vim /etc/my.cnf  #打开/etc/my.cnf文件

在这里插入图片描述

11.使用新密码连接Mysql

在终端输入如下内容:

mysql -uroot -proot mysql

在这里插入图片描述

12.测试Mysql是否可以正常使用

12.1测试Mysql是否正常

在连接上Mysql后输入如下内容:

show tables;
12.1.1.正常情况(跳过12.1.2步)

若出现如下信息,表示Mysql一切正常,可以正常使用.
在这里插入图片描述

12.1.2.出现问题

出现如下问题表示Mysql异常:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
在这里插入图片描述
上述问题的解决方案如下:
在Mysql中一次输入如下内容:

#这里的"root"修改为你之前设置的Mysql连接密码
alter user user() identified by "root"; 
#刷新权限
flush privileges;

具体操作如下图:
在这里插入图片描述
重新输入测试命令:

show tables;

如下图,则一切正常,Mysql已经可以正常使用了.
在这里插入图片描述

13.添加远程登录用户

13.1.添加远程登录用户

在Mysql中输入如下命令:

#以下命令中的Zero替换为你想要的用户名
#Zero123替换为你想要的用户登录密码
GRANT ALL PRIVILEGES ON *.* TO 'Zero'@'%' IDENTIFIED BY 'Zero123' WITH GRANT OPTION;
13.2.测试远程登录用户是否创建成功.

退出Myql后,执行如下命令:

#其中用户名和密码替换方式同上.
mysql -uZero -pZero123 Mysql

测试结果如下图,则表示远程登录用户创建成功.
在这里插入图片描述

14.参考文献:

https://www.cnblogs.com/fj99/p/11858706.html

Linux CentOS 7系统上安装MySQL可以参考以下几种方法: ### 在线安装MySQL 5.7服务端 可以使用`yum`命令安装MySQL服务端,命令如下: ```bash sudo yum install -y mysql-community-server ``` 安装过程中会安装公共模块、库、客户端和服务器等组件。如果安装报错,可以查看《常见问题》部分。安装完成后,可以查看配置文件和数据存储位置,配置文件位于`/etc/my.cnf`,数据存储在`/var/lib/mysql`目录,查看命令如下: ```bash ls /etc/my.cnf sudo ls /var/lib/mysql ``` 之后启动服务 [^1]。 ### 从官网下载安装安装 从oracle官网下载相应版本的mysql数据库,将安装包上传到指定目录(如`/usr/local`)。检查服务器上是否之前安装MYSQL,在CENTOS 7上会检查是否存在mariadb,检查命令可使用 [^2]。 ### 离线安装MySQL 5.7mysql安装目录(解压路径)下的`bin`目录执行初始化操作,命令如下: ```bash cd /usr/mysql/mysql-5.7.44/bin ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/mysql/mysql-5.7.44 --datadir=/usr/mysql/mysql-5.7.44/data --user=mysql --initialize ``` 注:初始化后最后一行会给出一个密码,最好复制保存一下 [^3]。 ### 安装MySQL 8 - 查看系统中是否自带安装mysql: ```bash yum list installed | grep mysql ``` - 删除系统自带的mysql及其依赖(防止冲突): ```bash yum -y remove mysql-libs.x86_64 ``` - 下载MySQL 8的社区版发布包: ```bash wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm ``` 另外,由于MySQL的GPG升级了,若是新安装MySQL,需要执行相应脚本 [^4][^5]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值