1.下载mysql5.7的rpm安装包

rpm的mysql包,安装起来简单,解压版的mysql还需要做许多配置,稍有不慎就会出错!!!

  • 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

2.上传mysql安装包到centos7的系统下

这里用的是xshell来连接和上传到centos7;首先安装lrzsz,这样就可以在xshell中拖拽上传了(非必须,只是方便拖拽上传)

[root@localhost src]# yum install lrzsz

进入/usr/local/src 并把mysql5.7的安装包拖拽上传到该目录下(当然上传到其它的目录也可以)

[root@localhost src]# cd /usr/local/src

3.安装依赖

3.1 查看linux上是否已经安装了mysql,有则卸载。

一般centos7默认安装了mariadb,这里把它卸载。

查看:[root@localhost bin]# rpm -qa|grep mariadb
卸载:[root@localhost bin]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
rpm -qa | grep mysql #查看是否安装了MySQL
rpm -qa | grep postfix
rpm -qa | grep mariadb
#卸载
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

3.2 安装mysql5.7所需要的依赖

yum -y install libaio
yum -y install net-tools
yum -y install perl

4.安装mysql5.7

4.1 解压mysql5.7安装包

[root@localhost src]# tar -xvf mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

解压完后会有很过rpm文件,这些就是我们需要安装的。

4.2 安装mysql5.7

[root@localhost src]# rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm

[root@localhost src]# rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm

[root@localhost src]# rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm

[root@localhost src]# rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm

4.3 查看mysql5.7的状态,没有启动则把mysql启动

出现下面这个death就是没有启动,新装的第一次是没有启动的。

rpm 已安装的mysql_上传


查看mysql启动状态

[root@localhost src]# service mysqld status

启动mysql active(running)代表启动成功

[root@localhost src]# service mysqld start

rpm 已安装的mysql_rpm 已安装的mysql_02

4.4 修改密码

#查看临时密码:得知临时密码就是如图
[root@localhost src]# grep password /var/log/mysqld.log

rpm 已安装的mysql_centos_03

#用临时密码登录mysql
[root@localhost src]# mysql -uroot –p
#修改成新的密码
mysql> set password = password("Mysql_123456");

4.5 开启远程连接,允许远程连接数据库

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

以上就可以远程连接了;另一种方法:

update user set host="%" where user="root"
flush privileges;

4.6 配置mysql的配置文件my.cnf

#打开配置文件my.cnf
[root@localhost src]# vi /etc/my.cnf
#在[mysqld]下面配置几行
lower_case_table_names=1   #配置表名不区分大小写 1:不区分大小写 0:区分大小写  这行必须配置 默认表名是区分大小写的,不利于开发
character-set-server=utf8          #设置为默认编码为utf8
init_connect='SET NAMES utf8'
max_connections=1024             #设置最大连接数
skip-name-resolve                #在连接远程数据库的时候,直接跳过MySQL的DNS解析
[root@localhost src]# service mysqld restart  #重启mysql 重启配置才能生效

4.7 防火墙开启端口

到这其实mysql已经安装和配置好,但是centos7的开了防火墙,外面还是访问不到mysql的,所以还要开端口3306(或者把防火墙关掉也行,生产环境勿用)

#关闭防火墙
[root@localhost src]#  systemctl stop firewalld
[root@localhost src]#  systemctl status firewalld
[root@ecs-317f-0001 init.d]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@ecs-317f-0001 init.d]#  firewall-cmd --reload
success
[root@ecs-317f-0001 init.d]# firewall-cmd --list-port
20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 888/tcp 6379/tcp 27017/tcp 3306/tcp
[root@ecs-317f-0001 init.d]# firewall-cmd --query-port=3306/tcp
yes

4.8 linux下mysql5.7 及以下版本更改root用户密码记录

1、mysql 5.7 更改密码记录:
申请阿里云账户后,自带mysql数据库,但是 mysql -u root -p 不能直接登录,于是更改密码,记录如下:

1)vi /etc/my.cnf  
2)在[mysqld]下边的某个位置增加: skip-grant-tables  ,然后 :wq 保存退出
3)在  /usr/local/mysql/bin目录下执行命令:  ./mysql -u root -p   ,然后回车两次,进入到mysql
4)执行命令:
use mysql
SET SQL_SAFE_UPDATES = 0
5)update mysql.user set authentication_string=password('root') where User='root';
6)flush privileges ; 
7)执行命令:SET SQL_SAFE_UPDATES = 1
8)vi /etc/my.cnf  ,删除skip-grant-tables 行
9)service mysqld restart
10) 在  /usr/local/mysql/bin目录下执行命令:  ./mysql -u root -p   然后输入新建的密码:root即可进入mysql

2、mysql 5.6版本更改密码:
mysql5.7以下版本更改密码相对简单
1)安装配置完毕后,执行如下命令进入mysql
mysql -u root -p ,回车两次进入mysql
2) 修改密码:update user set password=password(‘root’) where User=‘root’;
3)flush privileges ;

Linux远程复制

#远程复制文件夹:
scp -r /home/administrator/test/ root@192.168.1.100:/root/
#案例
[root@master bigdata]# scp -r /usr/local/bigdata/mysql/ root@slave2:/usr/local/bigdata/mysqlrpm/
#远程复制文件:
scp -r /home/administrator/test/test.txt root@192.168.1.100:/root/

#复制远程服务器的文件或文件夹到当前服务器的文件夹。
scp -r root@192.168.62.10:/root/ /home/administrator/Desktop/new/
scp -r root@192.168.1.100:/home/administrator/test/test.txt /root/