tos重装mysql_云服务器(腾讯云)从零开始部署记录(3)之mysql5.7安装

1、安装yum repo

centos的yum源中没有mysql(可尝试直接使用安装命令:yum install mysql-server尝试),需要到mysql的官网下载yum repo配置文件,然后安装:

#下载

wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

#repo安装

rpm -ivh mysql57-community-release-el7-9.noarch.rpm

2、安装mysql

yum install mysql-server #安装命令

systemctl start mysqld #启动MySQL

3、操作命令集

#首次安装mysql并启动备注即操作

systemctl start mysqld #启动MySQL,执行命令后没有任何返回,可以通过状态命令查看是否启动成功

systemctl stop mysqld #关闭MySQL

systemctl restart mysqld #重启MySQL

#查看MySQL运行状态,显示Active: active (running)表示成功了

systemctl status mysqld

#操作示例

[root@VM_0_6_centos ~]# systemctl status mysqld

● mysqld.service - MySQL Server

Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)

Active: active (running) since Mon 2019-03-18 11:25:45 CST; 56s ago

systemctl enable mysqld #设置开机启动

systemctl disable mysqld #关闭开机启动

#首次安装需要获取临时密码,使用命令如下,返回的最后冒号后面的即是临时密码,我这里是: aMKsBq#s-2(Y

grep 'temporary password' /var/log/mysqld.log

#操作示例

[root@VM_0_6_centos ~]# grep 'temporary password' /var/log/mysqld.log

2019-03-18T03:25:37.681423Z 1 [Note] A temporary password is generated for root@localhost: aMKsBq#s-2(Y

#倘若没有,则先删除原来的mysql残留的数据,注:首次安装不需要此操作

rm -rf /var/lib/mysql

#删除后重启

systemctl restart mysqld #重启MySQL

#命令登录mysql,输入后,提示输入密码,密码隐藏不显示,直接复制进去即可,回车,即可登录成功

mysql -u root -p #表示root账号登录

#操作示例:

[root@VM_0_6_centos ~]# mysql -u root -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.7.25

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

#登录后就是操作mysql数据库了

#修改默认密码,密码规则:

修改默认密码(包括配置可设置简单密码)

#安装不修改默认密码,会报以下错误

mysql> select @@log_error;

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

#密码规则,首次修改返回错误示例

mysql> set password=password("yourpassword");

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

#提示错误,密码安全度不够高,mysql5.7之后的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符

#该提示与两个validate_password_policy和validate_password_length的值有关系

#validate_password_policy可设置值为0,1,2,默认是1,如果设置为0,则密码只校验长度,如下:

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)

#设置后直接修改密码,不需要考虑字母和特殊字符,因为只是修改了校验规则,但是还是有长度校验的,

#长度校验默认是8,最小是4,可以自己设置

mysql> set password=password("12345678");

Query OK, 0 rows affected, 1 warning (0.00 sec)

#修改密码校验长度

#先查看当前密码校验长度,如下,可见是8

mysql> select @@validate_password_length;

+----------------------------+

| @@validate_password_length |

+----------------------------+

| 8 |

+----------------------------+

1 row in set (0.00 sec)

#设置校验长度为4

mysql> set global validate_password_length=1;

Query OK, 0 rows affected (0.00 sec)

#再次查看密码校验长度,已经变为4

mysql> select @@validate_password_length;

+----------------------------+

| @@validate_password_length |

+----------------------------+

| 4 |

+----------------------------+

1 row in set (0.00 sec)

设置可远程连接

#MySQL默认是没有开启远程控制的,必须添加远程访问的用户,命令如下,12345678为数据库密码:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;

#该命令将授权所有地址都可以通过root用户远程访问数据库,如果需要限定ip,可以将%换为ip,

#或者到腾讯云安全组的端口加上ip限制

#操作示例

#登录后,首先切换数据库,使用use mysql(mysql为数据库名)

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

#执行授权命令

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;

Query OK, 0 rows affected, 1 warning (0.00 sec)

#一定要执行此语句,刷新权限

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

#查看授权结果,已经加了一条记录,一般root用户只有localhost权限(最后一条)

mysql> select User,Host from user;

+---------------+-----------+

| User | Host |

+---------------+-----------+

| root | % |

| mysql.session | localhost |

| mysql.sys | localhost |

| root | localhost |

+---------------+-----------+

4 rows in set (0.00 sec)

至此,mysql5.7安装完成,可通过可视化工具连接,本人使用navicat

4、安装过程问题

由于SSH工具,长时间不操作会自动断掉,yum安装mysql到一半的时候,需要选择Is this ok [y/N]: y的时候,去做了其他事情,重新打开工具连接,再使用yum install mysql-server安装的时候提示以下内容:

[root@VM_0_6_centos ~]# yum install mysql-server

Loaded plugins: fastestmirror, langpacks

Existing lock /var/run/yum.pid: another copy is running as pid 22795.

Another app is currently holding the yum lock; waiting for it to exit...

The other application is: yum

Memory : 87 M RSS (482 MB VSZ)

Started: Mon Mar 18 10:53:34 2019 - 25:01 ago

State : Sleeping, pid: 22795

显示yum被锁了,解决方式,看到第一行的pid,直接kill掉,继续正常安装mysql5.7

[root@VM_0_6_centos ~]# kill -9 22795

5、navicat连接报错1045错误

#执行授权后,没有刷新权限,导致一直连接不上

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

6、其他:我操作的服务器没有开启防火墙,所有端口开启关闭、ip过滤都使用安全组策略配置解决,可能因为开启防火墙导致数据库端口没有开放,如果navicat连接不上,可以查看防火墙是否开启该端口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值