CentOS7 安装Mysql5.7

 

1 安装 GCC

yum install gcc

yum install tcl

 

2 安装wget

yum install wget

 

3 下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

 

4 安装mysql源 shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm

 

5 检查mysql源是否安装成功

shell> yum repolist enabled | grep "mysql.*-community.*"

 

6 安装MySQL

shell> yum install mysql-community-server

 

7 启动MySQL服务

shell> systemctl start mysqld

 

8 重新启动

shell> systemctl restart mysqld

 

9 查看MySQL的启动状态

shell> systemctl status mysqld

 

10 开机启动

shell> systemctl enable mysqld shell> systemctl daemon-reload

 

11 修改root默认密码

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

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

 

shell> mysql -uroot -p

Enter password: 输入默认密码 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

或者

mysql> set password for 'root'@'localhost'=password('Fcsx#123456');

 

 

12 添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:

mysql> grant all privileges on *.* to 'myuser'@'%' identified by 'mypassword' with grant option;

mysql> flush privileges;

 

grant all privileges on *.* to 创建的用户名 @"%" identified by "密码";

flush privileges;   * 刷新刚才的内容*

 

格式:grant 权限 on 数据库教程名.表名 to 用户@登录主机 identified by "用户密码";

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

同时也可以为现有的用户设置是否具有远程访问权限。如下:

use mysql;

update db set host = '%' where user = '用户名'; (如果写成 host=localhost 那此用户就不具有远程访问权限)

flush privileges;

 

注:flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。

 

13 使用nativecat远程连接数据?

提示:2003 -Can't connect to MySQL server on '10.0.0.18'(10038)

验证 telnet 192.168.237.102 3306 在端口 3306: 连接失败

再到虚拟机上确认 netstat -anp 

说明端口不通

 

14 开通3306端口

下面记录如何使用firewalld开放Linux端口:

开启端口?

[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent

命令含义:

–zone #作用域

–add-port=3306/tcp #添加端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效

重启防火墙?

[root@localhost ~]# firewall-cmd --reload

 

 

常见问题处理:

中途一些操作导致mysql.sock文件丢失

mysql.sock是一个临时文件,在mysql启动时会自动生成

可以简单地通过重启服务器重新创建得到它,前提是你的mysql服务可以正常重新启动

 

错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server 是无法给远程连接的用户权限问题

重新授权:

mysql> grant all privileges on *.* to 'myuser'@'%' identified by 'mypassword' with grant option;

mysql> flush privileges;

好文要顶 关注我 收藏该文  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值