linux 安装mysql yum源安装

2021-05-08  本文已影响0人  阿登20

如何安装Mysql

使用yum源安装

1.卸载已有的mysql

查询已安装的mysql(可能没有)

yum list installed | grep mysql

image.png

如果存在已安装的,则卸载

yum -y remove mysql-community-*

*在这里匹配任意字符,可以一次卸载多个。

image.png

卸载完成

image.png

2.配置仓库

由于CentOS 的yum源中没有mysql,需要到mysql的官网下载rpm文件或者配置 repo文件去镜像下载。

mysql 镜像之一:https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/

image.png

如何配置 repo文件:

[root@localhost ~]# vim /etc/yum.repos.d/mysql.repo
添加
[mysql5]
name=mysql57
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
gpgcheck=0

image.png image.png

3.安装指定版本

[root@localhost ~]# yum install mysql-community-server-5.7.14 -y

安装带server版本的5.7.14 yum会自动把其他的都装好,这也是yum安装的好处

image.png

4.检查是否安装成功

yum list installed | grep mysql
rpm -qa |grep mysql 也是可以的

image.png

5.启动

service mysqld start

6.跳过登录验证.

  如何设置跳过登录验证

 6.1 编辑my.cnf文件:  vim /etc/my.cnf
image.png
 在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程
image.png
6.2保存文档并退出

6.3重新启动mysql
image.png

6.4 登录

image.png

这里免密登录不要需要输入密码直接回车

image.png

7.免密登录后设置初始密码

mysql5.7开始 密码字段不再是password而是authentication_string:

update mysql.user set authentication_string=password('新密码') where user='root' and Host = 'localhost';

image.png

8.测试用新密码登录

先退出: quit

image.png

启动mysql
service mysqld start

登录

image.png

出现Mysql> 代表登录成功.

9.取消“跳过登录验证”

现在有密码了,需要取消“跳过登录验证”,不然可以无密码登录

1.输入quit;退出mysql

image.png

2.编辑my.cnf文件

vim /etc/my.cnf

image.png

删除刚加入的“skip-grant-tables”,保存退出

3.重新启动mysql

image.png

10.修改初始设定的密码

1.第一次安装完mysql不管是用临时密码登入还是通过免密方式修改密码登入之后,如果没有马上修改密码,而有其他的对数据库的操作动作都会报错,要求先修改密码。

image.png

2.这个时候需要修改密码

如果密码格式简单(比如只有小写字母和数字),会报错

alter user user() identified by 'daimenglaoshi666'

image.png

如果密码格式复杂(有大写字母,小写字母,数字,特殊符号),则成功

alter user user() identified by 'Daimeng666=';

image.png

原因分析:

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

image.png

强度为LOW,LOW代表什么?代表密码任意,但长度在8位或以上。

强度为MEDIUM,这个强度代表什么?代表密码包括:数字、大写字母、小写字母、特殊符号、长度8位以上。

强度为STRONG,这个时候必须先满足0,1的要求,然后它还追加了一个,对于密码中任意连续4个(或4个让上)字符不得是字典中的单词。

查看默认的密码策略会发现是 1 。

select @@validate_password_policy

image.png

可以通过命令自己修改策略。

set global validate_password_policy=0;

image.png

再修改密码,则简单密码也可以通过,一般开发时还是建议设置复杂一点的密码。

image.png

3 密码修改好以后,可以正常操作数据库了

image.png

11.测试sql,和windows里一样

image.png

12.其它配置

12.1开启远程控制

MySQL默认是没有开启远程控制的,必须添加远程访问的用户,即默认是只能自己访问,别的机器是访问不了的。

方式一:

1.1、连接服务器: mysql -u root -p

1.2、看当前所有数据库:show databases;

1.3、进入mysql数据库:use mysql;

1.4、查看mysql数据库中所有的表:show tables;

1.5、查看user表中的数据:select Host, User from user;

1.6、修改user表中的Host: update user set Host='%' where User='root';

            说明: % 代表任意的客户端,可替换成具体IP地址。

1.7、最后刷新一下:flush privileges;

   注意:一定要记得在写sql的时候要在语句完成后加上" ; "
方式二:
使用 grant 命令添加远程访问权限    
 grant all privileges on *.* to root@"%" identified by "Daimeng666=";
 或
 grant all privileges on *.* to root@"192.168.1.4" identified by "Daimeng666=";
 
 格式说明

 grant all privileges on 数据库名.表名|*.* to 创建的用户名(root)@"%|ip" identified       by  "密码";

 @ 后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)

如果要移除允许远程访问的权限:

1.进入mysql数据库:use mysql;查询user表会发现表中新增了一条记录

image.png

2.删除刚添加的权限记录

delete from user where host='%' and user='root';

  1. 刷新一下:flush privileges;让权限生效
image.png

12.2 关闭MySQL

service mysqld stop

12.3 重启MySQL

service mysqld restart

12.4 查看MySQL运行状态

service mysqld status

12.5 设置开机启动

service mysqld enable

12.6 关闭开机启动

service mysqld disable

12.7 配置默认编码为utf8:

vi /etc/my.cnf #添加 [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8'

其他默认配置文件路径:

配置文件:/etc/my.cnf

日志文件:/var/log//var/log/mysqld.log

服务启动脚本:/usr/lib/systemd/system/mysqld.service socket

文件:/var/run/mysqld/mysqld.pid

12.8 查看版本

select version();

上一篇下一篇

猜你喜欢

热点阅读