初级第一次在Linux下安装MySQL-5.7.19版本教程请看上一篇,如果已经会安装了,那么请看这篇linux下安装多个mysql-5.7.19,本文主要为大家详细介绍了linux下多个mysql5.7.19tar.gz安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。

环境:centos 6.5

1-下载

2-跳过登陆

3-1安装多个数据库需要配置自己的my.cnf,如果只安装一个,系统没有安装过直接这个命令就可以shell> groupadd mysql

shell> useradd -r -g mysql -s /bin/false mysql

shell> cd /usr/local

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

shell> mkdir mysql-files

查看下有没有data目录如果没有的话增加个命令(mkdir data)

shell> chmod 750 mysql-files

shell> chown -R mysql .

shell> chgrp -R mysql .

shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5

shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up

shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up

shell> chown -R root .

shell> chown -R mysql data mysql-files

shell> bin/mysqld_safe --user=mysql &

# Next command is optional

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

安装好了就可以直接跳到登陆 步骤5

下面说安装多个mysql情况:

3-2安装多个数据库需要安照如下命令:

1-增加配置文件 my.cnf (在mysql目录下命令touch my.cnf):

下面配置文件可以直接使用粘贴复制进去

然后创建log文件 /xcxyz/log/mysql/error.log[mysqld]

basedir= /usr/local/mysql-5.7.19-3307

datadir = /usr/local/mysql-5.7.19-3307/data

port = 3307

character-set-server=utf8

server_id = 11

#该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有我下面的问题

socket = /tmp/mysql3307.sock

log-error = /xcxyz/log/mysql/error.log

pid-file = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid

2-执行如下命令

2-1增加用户 组 我的用户和组都使用的是mysqlosf这个随意shell> groupadd mysql

shell> useradd -r -g mysql -s /bin/false mysql

shell> cd /usr/local

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

2-2建立软连接:shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

shell> mkdir mysql-files

查看下有没有data目录如果没有的话增加个命令(mkdir data)

2-3授权当前目录:shell> chmod 750 mysql-files

shell> chown -R mysqlosf .

shell> chgrp -R mysqlosf .

2-4编译

bin/mysqld --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --initialize --user=mysqlosf

查看日志输出:vi /xcxyz/log/mysql/error.log

2017-07-24T03:13:47.933684Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

2017-07-24T03:13:49.979892Z 0 [Warning] InnoDB: New log files created, LSN=45790

2017-07-24T03:13:50.262941Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.

2017-07-24T03:13:50.330756Z 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: 1d702294-701e-11e7-98a1-00163e30bbf6.

2017-07-24T03:13:50.340474Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.

2017-07-24T03:13:50.344419Z 1 [Note] A temporary password is generated for root@localhost: jZpgHhigx5>i(特别重要一会初始化密码)

2-5建立密钥shell> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf

2-6重新授权分配shell> chown -R root .

shell> chown -R mysql data mysql-files

2-7启动后台mysqlbin/mysqld_safe --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --user=mysqlosf &

Next command is optionalshell> cp support-files/mysql.server /etc/init.d/mysql.server

2-8查看mysql是否启动 ps -ef | grep mysql

4登陆mysql修改密码使用刚才的临时密码

我这里又出问题了哈哈,始终登陆不上去

Access denied for user 'root'@'localhost' (using password:YES)解决方法最下面

如果登陆上去了可以直接使用刚才的临时密码登陆并且设置密码

5-登录MySQL之后,要求立即修改密码,否则不能进行任何操作。执行下面的命令修改'root'@'localhost'的密码:SET PASSWORD = PASSWORD('root');

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

flush privileges;

6-为了可以远程登录,增加一个'root'@'%'账号:grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

7-本地测试连接

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

解决方案安装好了登陆不上去:

如果像我上面一样的话

原因是如下红色框内的英文 我的是第二个mysql需要指定socket和port,英文意思就是说 如果你没有指定socket的话那么会选择默认的 因为我们安装多个mysql 所以这个必须指定mysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p

如果这里不小心丢失了密码了或者密码过期了那么可以通过这个方式重置密码:

5-重置密码:

5-1关闭进程kill `cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid`

5-2创建文件mysql-init

5-2-1文件内容

第一种内容:ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysqlosf';

保存内容之后启动

复制代码 代码如下:bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &

如果上述内容不成功选择第二种内容UPDATE mysql.user

SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'

WHERE User = 'root' AND Host = 'localhost';

FLUSH PRIVILEGES;

保存内容之后启动

复制代码 代码如下:bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &

精彩专题分享:mysql不同版本安装教程 mysql5.7各版本安装教程 mysql5.6各版本安装教程

相关推荐:

lunux安装多个mysql_实例详解linux下多个mysql5.7.19(tar.gz)安装图文教程相关推荐

  1. linux安装多个mysql数据库_linux下多个mysql5.7.19(tar.gz)安装图文教程

    初级第一次在Linux下安装MySQL-5.7.19版本教程请看上一篇,如果已经会安装了,那么请看这篇linux下安装多个mysql-5.7.19 环境:centos 6.5 1-下载 2-跳过登陆 ...

  2. linux中which命令详解,Linux下which命令使用详解(转)

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置. whereis 查看文件的位置. locate 配合数据库查看文件位置. f ...

  3. 详解linux下auto工具制作Makefile源码包(制作篇)

    2019独角兽企业重金招聘Python工程师标准>>> 详解linux下auto工具制作Makefile源码包(制作篇) 水木杨 一.     概述 为了更好的制作configure ...

  4. linux上 arm开发环境搭建,详解 LINUX下QT For ARM开发环境搭建过程

    LINUX下QT For ARM开发环境搭建过程是本文介绍的内容,不多说,先来看内容.在PC上,我们需要得到两个版本的Qt,分别是:Qt-4.5.2和QtEmbedded-4.5.2-arm.前者包括 ...

  5. sort函数怎么用mysql_实例详解sort()函数的原理和使用方法

    本文主要为大家分享一篇实例详解sort()函数的原理和使用方法,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧,希望能帮助到大家. sort()方法就是对数组按照一定的条件进行排序. ...

  6. linux下的Apache2 + mysql5 + php5 源码完整安装详解

    由于公司要求下个项目得用PHP来开发,所以我不得不暂时放弃.net而钻入php的研究中...以下是我在linux下搭建php环境时所搜索到的相关资料以及自己的一些总结.     一:准备软件包,存放/ ...

  7. Linux安装软件包无法打开rpm,详解Linux 操作系统下安装rpm包的方法步骤

    第2代Linux操作系统在安装软件方面相当简单:第一步,搜索你要的软件,比如你要找一个游戏软件,它的名称叫myward,这个游戏软件的介绍是:myown war game.Linux操作系统搜索这个软 ...

  8. menisa mysql_实例详细说明linux下去除重复行命令uniq

    一,uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以就要去除掉.linux下有其他命令可以去除重复行,但是我觉得uniq还是比较方便的一个.使用uniq的时候要注意以下二点 1,对文本操 ...

  9. linux环境下ps命令行,Linux下ps命令详解 Linux下ps命令的详细使用方法

    Linux下ps命令详解 Linux上进程有5种状态:1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运 ...

最新文章

  1. DotNet生成随机数的一些方法
  2. Hibernate的配置文件 Hibernate.cfg.xml与xxx.hbm.xml
  3. vi/vim 中批量在行插入或删除指定字符
  4. window清理垃圾
  5. 2.0 自动梯度 - PyTorch学习笔记
  6. Python蜕变-2017-4-23
  7. SQL:如何用一个sql统计出全校男生个数、女生个数以及总人数
  8. libevent源码深度剖析九
  9. 【报告分享】2020直播电商分析报告-抖音VS快手.pdf(附下载链接)
  10. 三元运算符, @屏蔽错误运算符
  11. UVa10340 - All in All
  12. wps直接打开CVS文件会把长串数字订单号最后4位变为0
  13. Bootstrap入门!
  14. displayTag标签
  15. 900款工作岗位竞聘PPT模板免费下载
  16. 刚体运动学公式_经典运动学公式汇总
  17. 串口termios函数
  18. js 利用audio buffers[int16Array]计算分贝
  19. 前端制作PUBG瞄准镜!
  20. 安全须知 百数返校登记助力校园防控工作

热门文章

  1. 《工业控制网络安全技术与实践》一2.2 分布式控制系统
  2. Mysql优化-大数据量下的分页策略
  3. 构架https服务器
  4. javascript xml转json
  5. 【Android】Error:Execution failed for task ':app:lint'
  6. Apache Arrow 内存数据
  7. 【转】揭开Linux的Swap之谜
  8. 列表生成式的复习以及生成器的练习, 杨辉三角实例(非常巧妙)
  9. Java笔记之对象代理实例
  10. WordPress Plupload插件未明跨站脚本漏洞