一、下载mysql的rpm tar文件

文件名称:mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar
官方地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar

二、卸载原有的mysql

请查看tony~tian的博客:https://yq.aliyun.com/articles/58287

三、安装mysql

1、解压

# 将mysql-5.7.-.el6.x86_64.rpm-bundle.tar压缩包解压到/usr/wangzf/mysqlrpm/下
[root@localhost downloads]# tar -xvf mysql-5.7.-.el6.x86_64.rpm-bundle.tar -C ../mysqlrpm/
mysql-community-libs-compat-5.7.-.el6.x86_64.rpm
mysql-community-test-5.7.-.el6.x86_64.rpm
mysql-community-libs-5.7.-.el6.x86_64.rpm
mysql-community-common-5.7.-.el6.x86_64.rpm
mysql-community-embedded-5.7.-.el6.x86_64.rpm
mysql-community-embedded-devel-5.7.-.el6.x86_64.rpm
mysql-community-client-5.7.-.el6.x86_64.rpm
mysql-community-devel-5.7.-.el6.x86_64.rpm
mysql-community-server-5.7.-.el6.x86_64.rpm # 查看解压后的rpm软件包
[root@localhost downloads]# cd ../mysqlrpm/
[root@localhost mysqlrpm]# ll
total
-rw-r--r--. Mar : mysql-community-client-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-common-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-devel-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-embedded-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-embedded-devel-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-libs-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-libs-compat-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-server-5.7.-.el6.x86_64.rpm
-rw-r--r--. Mar : mysql-community-test-5.7.-.el6.x86_64.rpm

2、安装mysql

# 想要安装mysqlclient和mysqlserver,需要先安装common和libs
[root@localhost mysqlrpm]# rpm -ivh mysql-community-common-5.7.-.el6.x86_64.rpm
Preparing... ########################################### [%]
:mysql-community-common ########################################### [%]
[root@localhost mysqlrpm]# rpm -ivh mysql-community-libs-5.7.-.el6.x86_64.rpm
Preparing... ########################################### [%]
:mysql-community-libs ########################################### [%]
[root@localhost mysqlrpm]# rpm -ivh mysql-community-client-5.7.-.el6.x86_64.rpm
Preparing... ########################################### [%]
:mysql-community-client ########################################### [%]
[root@localhost mysqlrpm]# rpm -ivh mysql-community-server-5.7.-.el6.x86_64.rpm
Preparing... ########################################### [%]
:mysql-community-server ########################################### [%] # 查看已安装的与mysql相关的软件
[root@localhost mysqlrpm]# rpm -qa|grep -i mysql
mysql-community-common-5.7.-.el6.x86_64
mysql-community-client-5.7.-.el6.x86_64
mysql-community-libs-5.7.-.el6.x86_64
mysql-community-server-5.7.-.el6.x86_64

安装异常处理:

# 如果出现以下错误,请先安装perl、libnuma
[root@slave01 mysqlrpm]# rpm -ivh mysql-community-server-5.7.-.el6.x86_64.rpm
warning: mysql-community-server-5.7.-.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
/usr/bin/perl is needed by mysql-community-server-5.7.-.el6.x86_64
libnuma.so.()(64bit) is needed by mysql-community-server-5.7.-.el6.x86_64
libnuma.so.(libnuma_1.)(64bit) is needed by mysql-community-server-5.7.-.el6.x86_64
libnuma.so.(libnuma_1.)(64bit) is needed by mysql-community-server-5.7.-.el6.x86_64
perl(File::Path) is needed by mysql-community-server-5.7.-.el6.x86_64
perl(Getopt::Long) is needed by mysql-community-server-5.7.-.el6.x86_64
perl(POSIX) is needed by mysql-community-server-5.7.-.el6.x86_64
perl(strict) is needed by mysql-community-server-5.7.-.el6.x86_64 [root@slave01 mysqlrpm]# yum install perl
[root@slave01 mysqlrpm]# yum install libnuma*

3、启动mysql

# 查看mysql服务的状态
[root@localhost mysqlrpm]# service mysqld status
mysqld is stopped # mysql尚未启动,使用service mysqld start启动(这里是第一次启动,会初始化一些参数)
[root@localhost mysqlrpm]# service mysqld start
Initializing MySQL database: [ OK ]
Installing validate password plugin: [ OK ]
Starting mysqld: [ OK ] # 停止mysql服务
[root@localhost mysqlrpm]# service mysqld stop
Stopping mysqld: [ OK ] # 启动mysql服务
[root@localhost mysqlrpm]# service mysqld start
Starting mysqld: [ OK ] # 重启mysql服务
[root@localhost mysqlrpm]# service mysqld restart
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]

四、修改root密码

# 关闭mysql服务
[root@localhost ~]# service mysqld stop
Stopping mysqld: [ OK ] # 安全模式下启动mysql,并且跳过权限表的验证
[root@ ~]# mysqld_safe --skip-grant-tables &
[]
[root@ ~]# --06T23::.604144Z mysqld_safe Logging to '/var/log/mysqld.log'.
--06T23::.674987Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql # 准备登陆
mysql -u root -p # 这里随便输入密码,都可以进入mysql
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7. MySQL Community Server (GPL) Copyright (c) , , 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. # 更改密码(这里设置的密码是1234)
mysql> update mysql.user set authentication_string=password('') where user='root' and Host = 'localhost';
Query OK, row affected, warning (0.04 sec)
Rows matched: Changed: Warnings: # 刷新权限
mysql> flush privileges;
Query OK, rows affected (0.00 sec) # 退出mysql
mysql> quit
Bye # 重启mysql
[root@localhost ~]# service mysqld restart
--06T23::.067045Z mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]
[]- Done mysqld_safe --skip-grant-tables # 以root身份登陆
[root@localhost ~]# mysql -uroot -p # 输入刚才设置的密码1234,正常使用mysql
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7. Copyright (c) , , 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

1、centos开启防火墙端口3306

# 开放3306端口
[root@ ~]# /sbin/iptables -I INPUT -p tcp --dport -j ACCEPT # 保存
[root@ ~]# /etc/rc.d/init.d/iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] # 查看防火墙的状态
[root@ ~]# /etc/init.d/iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ state NEW tcp dpt:
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT)
num target prot opt source destination
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT)
num target prot opt source destination # 删除刚刚添加的端口
# 这里我原先已经开放了3306端口,再次添加又增加了一个3306,所以显示2个3306,这里我将num为2的那个3306删除
[root@ ~]# iptables -D INPUT # 查看防火墙的状态(奇怪的是我原本也开放的有80端口,莫名其妙没了...)
[root@ ~]# iptables -L -n --line-number
Chain INPUT (policy ACCEPT)
num target prot opt source destination
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ state NEW tcp dpt:
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT)
num target prot opt source destination
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT)
num target prot opt source destination

2、修改mysql表,允许远程访问

# 登陆
[root@ ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7. Copyright (c) , , 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> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;
ERROR (HY000): You must reset your password using ALTER USER statement before executing this statement. # 在设置远程登录原先是提示错误。百度一番,需要设置root密码,好吧,我原先是1234,现在还设置为1234
mysql> SET PASSWORD = PASSWORD('');
ERROR (HY000): Your password does not satisfy the current policy requirements # 发现是密码太脆弱,究其根本是由于mysql有密码验证的策略,那么这里设置一下
# 设置密码强度检查等级为0,/LOW、/MEDIUM、/STRONG。
mysql> set global validate_password_policy=;
Query OK, rows affected (0.00 sec) # 设置密码长度:-->
mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
| |
+----------------------------+
row in set (0.00 sec) mysql> set global validate_password_length=;
Query OK, rows affected (0.00 sec) mysql> select @@validate_password_length;
+----------------------------+
| @@validate_password_length |
+----------------------------+
| |
+----------------------------+
row in set (0.00 sec) # 设置密码为1234
mysql> SET PASSWORD = PASSWORD('');
Query OK, rows affected, warning (0.00 sec) # 设置允许远程访问
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;
Query OK, rows affected, warning (0.00 sec) # 刷新权限
mysql> flush privileges;
Query OK, rows affected (0.00 sec)
# 退出
mysql> exit;
Bye

3、windows下远程连接vm12下centos6.9的mysql

Microsoft Windows [版本 6.1.]
版权所有 (c) Microsoft Corporation。保留所有权利。 C:\Users\Administrator>mysql -h 192.168.22.130 -u root -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7. MySQL Community Server (GPL) Copyright (c) , , 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>

最后就问下:惊不惊喜?意不意外?

vm12下Centos6安装mysql5.7的更多相关文章

  1. centos6.7下 编译安装MySQL5.7

    centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...

  2. CentOS6.5_64bit下编译安装MySQL-5.6.23

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...

  3. Linux上centOs6+安装mysql5.7详细教程 - 前端小鱼塘

    https://coyhom.github.io/ 人类的本质是复读机,作为一个非linux专业人员学习linux最好的办法是重复 环境centos6.5 版本5.7 1: 检测系统是否自带安装mys ...

  4. Linux(CentOS7)下二进制安装MySQL5.7.26

    记录一下自己在 CentOS7 下二进制安装 MySQL5.7.26 的过程,之前使用 Linux(CentOS7)下rpm安装MySQL8.0.16 之后发现 rpm 方式安装不利于维护,也不利于单 ...

  5. CentOS6.x下yum安装MySQL5.5/5.6

    1. 安装mysql-5.5的yum源 # rpm -ivh http://repo.mysql.com/yum/mysql-5.5-community/el/6/x86_64/mysql-commu ...

  6. centos6.5下yum安装mysql5.5

    第一步就是看linu是否安装了mysql,经过rpm -qa|grep mysql查看到centos下安装了mysql5.1,那就开始卸载咯 2 接下来就是卸载mysql5.1了,命令:rpm -e ...

  7. centos6.6下编译安装mysql5.6之后启动失败:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

    今天在编译安装mysql5.6时候出现Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysq ...

  8. CentOS6.9 下编译安装MySQL5.7.19

    官网:https://www.mysql.com/ 下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz 一.准备工作 ...

  9. centos下编译安装mysql5.6

    CentOS 6.4下编译安装MySQL 5.6.14 参考:http://www.cnblogs.com/xiongpq/p/3384681.html 概述: CentOS 6.4下通过yum安装的 ...

随机推荐

  1. Deep Visual-Semantic Alignments for Generating Image Descriptions(深度视觉-语义对应对于生成图像描述)

    https://cs.stanford.edu/people/karpathy/deepimagesent/ Abstract We present a model that generates na ...

  2. Android在一个app中启动另一个App

    Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); Compon ...

  3. C 可变参数的宏定义

    宏定义 也能来可变参数..吼吼..方便好多.. #define T(x,y...) printf(x,##y); C99标准..这我也管不到.... 关键是那个 ... 和 ## 我也不推荐到首页.记 ...

  4. query聚类技术

    query聚类 目的 query聚类主要有以下两个目的 解决query空间稀疏问题(长尾query) 挖掘用户意图(一条行为包含的意图是稀疏的,当有一簇行为时,意图更明确) 可以说聚类是构建内容模型的 ...

  5. Block Formatting Contexts (块级格式化上下文) 详解

         最近在学习BootStrap框架,发现里面清除浮动的类 .clearfix 跟平时自己用的不太一样.它的样式是这样的: .clearfix:before { content: " ...

  6. Java代码生成16位纯数字的订单号

    //生成16位唯一性的订单号 public static void getUUID(){ //随机生成一位整数 int random = (int) (Math.random()*9+1); Stri ...

  7. Codeforces Round #551 (Div. 2)B. Serval and Toy Bricks

    B. Serval and Toy Bricks time limit per test 1 second memory limit per test 256 megabytes input stan ...

  8. 关于DataGridView的ClearSelection方法

    最近做winform项目,遇到一个问题.  纠结了几天,最终解决了,记录一下! 新建一个Form窗体,拽一个DataGridView上去,然后写一个方法 private void BindData() ...

  9. 【python】collections模块(有序字典,计数器,双向队列)

    collections模块基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上 ...

  10. 八大排序算法的python实现(六)归并排序

    代码: #coding:utf-8 #author:徐卜灵 def merge(left,right): i,j = 0,0 result = [] while i < len(left) an ...