centos7 mysql安装及配置

服务器环境及版本

阿里云服务器ECS centos7.7

安装软件版本

mysql8.0.12

搭建方法- yum源安装

1. yum源操作及配置

  • 首先更新yum源,与时俱进
yum update -y
  • 下载mysql源安装包

建立文件夹并进入,下载mysql源安装包

mkdir /usr/local/mysql
cd /usr/local/mysql
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
  • 安装mysql源

下载完成后进行本地yum源安装

yum localinstall mysql80-community-release-el7-1.noarch.rpm
  • 检查是否成功
yum repolist enabled | grep "mysql.*-community.*"

Mgx4dH.md.png

  • 上步成功后进行mysql安装
yum install mysql-community-server

2. 启动mysql服务

  • 启动命令
#二者择其一
systemctl start mysqld
或者
service mysqld start
  • 查看是否启动成功
#二者择其一
systemctl status mysqld
或者
service mysqld status
#如下图则是启动成功,如果报红出错那就按照错误找度娘。

M2p2Q0.md.png

  • 设置开机自启
systemctl enable mysqld
systemctl daemon-reload

3. 相关设置

  • 设置mysql登录密码

mysql安装成功后会自动生成一个root权限的密码,位置在/var/log/mysqld.log

#可以使用cat命令,不过展示内容过多,不好明确具体密码,所以采用更专业的grep命令
grep 'temporary password' /var/log/mysqld.log

M2JWdO.md.png

⚡ 特意去查了一下grep,可通俗的理解为

grep的全称为:Global search Regular Expression and Print out the line全称中的“Global search"为全局搜索之意。

  • 客户端登录
 mysql -uroot -p
 #然后在命令行输入上方查询出的root密码
  • 然后修改成自己想要的密码

⚡ 特别注意这个设置密码需要大小写及特殊符号数据等复杂组合,要不修改不成功

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Haier...123';
#如果上方执行错误则使用
set password for 'root'@'localhost'=password('Haier...123');
  • 重新启动mysql服务使配置生效
systemctl restart mysqld

4. 添加远程登录用户

mysql 默认只允许root帐户在本地登录。如果想要在其他机器上使用工具连接,必须修改root允许远程连接,或者添加一个允许远程连接的帐户。

  • 客户端登录
mysql -uroot -p 
Enter password:Haier...123
  • 选择mysql库
use mysql
  • 查看root用户的相关信息:
select host, user from user;
#其中root的host值为localhost,意思是只支持本地连接

MRE59S.png

  • 修改root用户的host改为允许远程访问
GRANT ALL ON *.* TO 'root'@'%';
#如果上方执行错误则使用
update user set host='%' where user ='root';
#命令使修改生效
flush privileges;
#再次查看root用户的相关信息
select host, user from user;

MRVvVI.png

5. 远程连接异常

ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@‘localhost’

#其中password为之前修改过的
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
#若还报错则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

😂 本文均由JavaDog原创,转载请标明出处。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章