您的当前位置:首页mysql5.7.19(tar.gz)在linux下安装图文教程详解

mysql5.7.19(tar.gz)在linux下安装图文教程详解

2020-11-09 来源:爱问旅游网
这篇文章主要为大家详细介绍了linux下mysql5.7.19tar.gz安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

初级第一次在linux下安装mysql-5.7.19版本教程,如果已经会安装了,那么请看下一篇linux下安装多个mysql-5.7.19

环境:centos 6.5

1、下载


2、跳过登陆


3、上传并解压到目录../usr/local/mysql-5.7.19-3307

代码如下:

tar -zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz -C ../usr/local/mysql5.7.19-3307

这里写图片描述

4、添加系统mysql组和mysql用户:

执行命令:


groupadd mysqlosf和useradd -r -g mysqlosf mysqlosf

这里写图片描述

5、授权当前目录给组用户mysqlosf


chown -R mysqlosf:mysqlosf .

这里写图片描述

执行红框内的两个命令发现都不行 观察报错原因意思是找不到路径 这里的原因是默认选择安装到usr/lcoal/mysql

因为我们一个系统可能安装多个数据库 一主多从 或者多主多从 ,我这里也是因为有了一个mysql那么我在安装的时候就不会使用它默认的路径以及端口3306,选择了自定义路径usr/,那么我们发现新版本的mysql这里就会有问题。

这里写图片描述

那么我查看了mysqld执行文件,结果很遗憾,那么我看到了在support-files下面有个mysql.server这里面有个红色框内说的特别好,那么我们理解他就是配置文件默认的,然后红色框内是描述:

这里写图片描述

大意翻译:如果你安装mysql在其他路径 而不是usr/local/mysql,那么你必须做以下的事情 运行这个脚本在mysql安装的目录,创建一个 /etc/my.cnf文件和以下信息


[mysqld] 
basedir=<path-to-mysql-installation-directory>

添加上述的内容到任意其他的配置文件 例如 ~/.my.ini

并且copy my_print_defaults 到 /usr/bin 添加这个路径到安装目录的基本路径,如果你想要影响其他变量你应该啊做些改变在etc/my.cnf 或其他配置信息。

如果你改变了基本目录,你必须也改datadir数据目录,这些会是设置的默认配置文件被重写。

但是相同道理我发现个可恶的事情,假如说现在你安装这个安装了那么再来一个mysql呢也是这么安装,到etc/my.cnf吗?可以发现这里其实他想表达的只是如果你需要只是安装一个mysql的话那么安照刚才上面所述的就可以了,但是我们现在要安装多个,那么肯定这样是不可以的,但是配置文件肯定

6、得需要 先在mysql-5.7.19-3307目录下创建my.cnf配置文件如下图:

这里写图片描述

7、然后开始初始化3307端口上的mysql:

代码如下:

bin/mysqld --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --initialize --user=mysqlosf

这里写图片描述

然后提示信息如图:

2017-07-20T03:34:58.140832Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-07-20T03:35:00.213126Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-07-20T03:35:00.482183Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-07-20T03:35:00.554451Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 68e5e3b4-6cfc-11e7-a9af-00163e30bbf6.
2017-07-20T03:35:00.557933Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-07-20T03:35:00.562343Z 1 [Note] A temporary password is generated for
 root@localhost:


hgPcBW?Xf86b(临时数据库密码新版本数据库为了加强安全性)
------------

这里写图片描述

8、生成密钥:

bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf
Generating a 2048 bit RSA private key
........................................................................................+++
................................................................+++
writing new private key to 'ca-key.pem'
-----
Generating a 2048 bit RSA private key
............................+++
....+++
writing new private key to 'server-key.pem'
-----
Generating a 2048 bit RSA private key
...........................................................................................+++
......................................................................+++
writing new private key to 'client-key.pem'
-----

这里写图片描述

9、补之前的目录 哈哈之前没有创建不知道影响啥

mkdir mysql-files
chmod 750 mysql-files
chown -R root . 
chown -R mysqlosf data mysql-files

10、启动mysql后台进行

bin/mysqld_safe --user=mysqlosf &
[1] 28106
[root@iZ2ze2jvzepskyobjmavtiZ mysql-5.7.19-3307]# 2017-07-20T04:01:40.623159Z mysqld_safe Logging to '/alidata/log/mysql/error.log'.
2017-07-20T04:01:40.679386Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5.7.19-3307/data
2017-07-20T04:01:40.868828Z mysqld_safe mysqld from pid file /usr/local/mysql-5.7.19-3307/data/iZ2ze2jvzepskyobjmavtiZ.pid ended

这里写图片描述

11、 Next command is optional

shell> cp support-files/mysql.server /etc/init.d/mysql.server

12-开始登录mysql进行相关操作

bin/mysql -uroot -p

输入密码就是:初始化端口的时候提示的

这里写图片描述

但是拒绝了,发现上面的sql启动的时候有问题msyqld_safe 。。ended

代码如下:

mysqld_safe mysqld from pid file /usr/local/mysql-5.7.19-3307/data/iZ2ze2jvzepskyobjmavtiZ.pid ended

这里写图片描述

也就是说没有启动起来,查看下:(果然没有哈哈 那么遇见问题了继续解决呗)

这里写图片描述

使用root用户登陆没有报错但是一直是这状态 没有成功

这里写图片描述

查看状态启动了但是发现有个问题就是socket两个相同不过不是一个端口也是可以存在的继续走试试

这里写图片描述

成功了应该就是刚才的那个mysqlosf我没有赋值权限成功。。我的天呢

这里写图片描述

13、登录MySQL之后,要求立即修改密码,否则不能进行任何操作。执行下面的命令修改'root'@'localhost'的密码:

SET PASSWORD = PASSWORD('root');
 ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; 
flush privileges;

14、为了可以远程登录,增加一个'root'@'%'账号:

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

15、本地测试连接

按照上面的办法,继续解压安装mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz,并且配置为3308,3309端口,就可以安装多个mysql了。

显示全文