资讯专栏INFORMATION COLUMN

Linux---一台主机部署多版本mysql服务和mysql实例

godlong_X / 3043人阅读

摘要:背景服务器上有,要求升级为方法为了降低影响范围,可持续作业,决定在现有基础上部署,即部署多版本注意事项与现有安装目录不能相同与现有数据库文件目录不能相同与现有的启动端口不能相同默认与现有的服务的不能相同,即里面的的设置不能一样与现有的服务的

1.背景

服务器上有mysql5.5.38,要求升级为mysql5.6

2.方法

为了降低影响范围,可持续作业,决定在现有基础上部署mysql5.6,即部署多版本mysql

3.注意事项

1.与现有mysql安装目录不能相同
2.与现有mysql数据库文件目录不能相同
3.与现有msql的启动端口不能相同(默认3306)
4.与现有mysql的服务的socket不能相同,即my.cnf里面的socket的设置不能一样
5.与现有mysql的服务的pid文件不能相同,即my.cnf里面的pid-filed设置不能一样

4.步骤

1.创建用户组和用户&创建目录

创建用户组和用户

groupadd mysql
useradd -g mysql mysql

创建目录

mkdir /home/mysql/base
mkdit /home/mysql/data
chrom -R mysql:mysql base
chrom -R mysql:mysql data

2.下载源码包&解压

下载地址:https://dev.mysql.com/downloa...
选项Select Operating System:linux-generic

wget https://dev.mysql.com/get/Dow...
tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
cp -r mysql-5.6.37-linux-glibc2.12-x86_64 /home/mysql/base //复制解压后的包
cd /home/mysql/base
mv mysql-5.6.37-linux-glibc2.12-x86_64 mysql-5.6.37 //重命名文件夹

3.安装

cd /home/mysql/base/mysql-5.6.37/scripts 
mysql_install_db --basedir=/home/mysql/base/mysql-5.6.37 --datadir=/home/mysql/data/5.6.37/st01 --user=mysql

安装后可查看数据库目录有如下文件,创建另一个端口的mysql服务可直接复制这个文件夹

cd /home/mysql/data/5.6.37/st01
ll -ah
total 110600
-rw-rw----. 1 mysql mysql 12582912 Sep 21 23:19 ibdata1
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile0
-rw-rw----. 1 mysql mysql 50331648 Sep 21 23:19 ib_logfile1
drwx------. 2 mysql mysql 4096 Sep 21 23:19 mysql
drwx------. 2 mysql mysql 4096 Sep 21 23:19 performance_schema
drwx------. 2 mysql mysql 6 Sep 21 23:19 test

4.配置文件设置

复制一份配置文件

cd /home/mysql/data/mysql-5.6.37/st01
cp /home/mysql/base/5.6.16/support-files/my-default.cnf ./my.cnf

修改配置文件

vi ./my.cnf
port = 9701
socket = /home/mysql/data/5.6.37/st01/mysql.sock
basedir = /home/mysql/base/5.6.37
datadir = /home/mysql/data/5.6.37/st01
......
[mysqld_safe]
log-error = /home/mysql/data/5.6.37/st01/mysqld.log
pid-file = /home/mysql/data/5.6.37/st01/mysql.pid

5.服务管理

1.启动服务

/home/mysql/base/5.6.37/bin/mysqld_safe --defaults-file=./my.cnf --user=mysql&

2.查看服务
ps查看mysql进程

ps -ef | grep mysql

也可以查看log信息看启动情况

cat /home/mysql/data/5.6.37/st01/mysqld.log

3.关闭服务

/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p shutdown

暴力关闭(有数据丢失风险)

ps -ef | grep 端口号   //命令结果第二列为进程号
kill -9 进程号 //强制杀掉进程

6.用户设置

6.1 本地访问
安装好后,mysql默认只有root用户(此用户是mysql用户,而非Linux用户),并且没有密码

1.给默认的root用户设置密码(设置后只允许localhost本地访问)

/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root password "password123"

2.给默认的root用户修改密码

/home/mysql/base/5.6.37/bin/mysqladmin -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p password "password1234"

6.2 远程访问

1.进入mysql

/home/mysql/base/5.6.37/bin/mysql -P 9701 -S /home/mysql/data/5.6.37/st01/mysql.sock -u root -p

按提示输入密码

2.1 方法一:grant 赋予用户root所有权限
grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

mysql>grant all privileges on *.* to "root"@"%" identified by "password" with grant option;

2.2 方法二:root对应的host成%,表示可以任意IP地址登录

mysql>update user set host = "%" where user = "root";

3.刷新配置后退出

mysql>flush privileges;
mysql>exit;

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/10405.html

相关文章

  • 阿里云服务部署Java Web项目全过程

    摘要:最近需要将一个项目部署到服务器上,方便多人共享访问。购买服务器第一步当然是需要购买一台服务器了,我选择的是阿里云的,对于新用户有一定的优惠活动。部署项目我需要将本地的工程打包成,以及将数据库导出至文件一并上传到服务器上。最近需要将一个Java Web项目部署到服务器上,方便多人共享访问。这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾。 购买...

    wua_wua2012 评论0 收藏0
  • 服务器 ECS 建站教程:在ECS上部署数据库

    摘要:在阿里云平台上,可通过自带的镜像市场实现一键部署系统的数据库,完美解决耗时长部署易出错的缺陷。操作步骤登录云服务器管理控制台。单击左侧导航中的云服务器创建实例。在ECS上部署数据库 数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进...

    stefan 评论0 收藏0
  • 微信分享|如何在云中构建大规模分布式系统

    摘要:大家好,我是系统工程师王煜,今天由来分享在云计算平台上构建稳定可靠的分布式系统架构。接下来我来给大家介绍如果利用云计算的优势,结合企业的业务特点构建稳定可靠的分布式系统。 本次分享 William 将从技术角度分析在云计算环境中,当用户业务面对流量激增、数据量翻番、访问量指数级攀升的烦恼时,如何利用云计算平台的弹性,结合业务自身特点,设计和构建一个高可用、高伸缩性的后端系统架构。同时会...

    RichardXG 评论0 收藏0
  • 使用Kubernetes你需要知道的硬道理

    摘要:是谷歌内部为解决这个问题所做的工作的产物,它为管理容器如何在整个集群中运行提供了一个单一的框架。在云中使用服务在许多云中作为标准问题项提供,尽管它在谷歌云平台,中最突出地表现为本地特性。使用,运行控制平面,将重点部署将用于所需配置的容器。每一项创新都会带来新的复杂性。容器使以一种方便的、可移植的形式打包和运行应用程序成为可能,但至少要说以规模管理容器是一个挑战。Kubernetes是谷歌内部...

    fyber 评论0 收藏0
  • 怎么进入云主机-云主机怎么使用?

    摘要:主机空间优势主机技术同时支持的平台服务。主机空间较其他主机还是有一定优势的,尤其是在灵活性和控制性方面。云主机怎么使用准备好一台云服务器,云服务器多包含的基本配置就是,内存,硬盘等基本配置。利用云服务器的地址,账户名,密码来登录。该怎么选择合适自己的云虚拟主机?随便打开一个IDC网站,经常出现:国外超大的免费PHP主机空间,还支持MySQL,哇!!不错的国外免费超大PHP空间,20GB 空间...

    Joonas 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<