linux安装不同版本mysql_linux部署不同版本mysql

测试环境部署过程中经常会遇到同一个服务器上部署两个不同版本的mysql数据库,在部署过程中也会有各种各样的问题,现将部署多版本mysql的方法总结如下:

1、下载mysql版本

http://downloads.mysql.com/archives/community/

选择Linux - Generic 以及对应的 mysql版本,我这次安装的是 mysql 5.6.26版本,服务器上已安装 mysql5.5.41

下载页面最下方  Linux - Generic (glibc 2.5) (x86, 64-bit), Compressed TAR Archive(mysql-5.6.26-linux-glibc2.5-x86_64.tar.gz),如果服务器是32位的就下载32位的安装包。

也可以在服务器上,进入到相应目录,使用 wget方法下载

wget --continue http://downloads.mysql.com/archives/get/file/mysql-5.6.26-linux-glibc2.5-x86_64.tar.gz --directory-prefix=/usr/local/ --progress=bar

我是在 /usr/local/下创建了mysql5.6/ 用于安装mysql的目录,与已有版本目录不要有冲突,同时创建/data/mysql5.6/用于数据库数据目录

2、下载之后,解压安装包

tar -zxvf mysql-5.6.26-linux-glibc2.5-x86_64.tar.gz

然后通过cp指令复制解压出来的文件夹草/usr/local/mysql5.6/   (一定要将安装文件复制到mysql的安装目录下)

cp -fr mysql-5.6.26-linux-glibc2.5-x86_64/* mysql5.6

3、创建用户(如果已创建,忽略此步骤)

groupadd mysql

useradd -g mysql mysql

4、安装mysql5.6.26

/usr/local/mysql5.6/scripts/mysql_install_db --basedir=/usr/local/mysql5.6 --datadir=/data/mysql5.6 --user=mysql

如果没有报错,基本就安装完成了

5、配置mysql

cd /usr/local/mysql5.6

cp ./support-files/my-default.cnf ./my.cnf

首先,打开此前服务器已有的mysql版本的my.cnf (/etc/my.cnf)

cat /etc/my.cnf

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

lower_case_table_names = 1

#max_allowed_packet=50M

max_connections = 1024

character-set-server = utf8

wait_timeout = 31536000

interactive_timeout = 31536000

[mysqld_safe]

log-error = /var/test/mysqld.log

pid-file = /var/run/mysqld/mysqld.pid

然后根据以上内容修改新安装的mysql的my.cnf,主要是修改 port、datadir、basedir、log-error、pip-file、socket,修改后的my.cnf如下:

vim /usr/local/mysql5.6/my.cnf

[mysqld]

port = 3316

socket = /data/mysql5.6/mysql.sock

basedir = /usr/local/mysql5.6

tmpdir = /tmp/mysql5.6

datadir = /data/mysql5.6

...

[mysqld_safe]

log-error = /usr/local/mysql5.6/mysqld.log

pid-file = /data/mysql5.6/mysql56.pid

以上修改后,对于不存在的目录和文件都需要手工创建

mkdir /data/mysql5.6

touch /usr/local/mysql5.6/mysqld.log

touch /data/mysql5.6/mysql56.pid

6、启动mysql5.6.26服务

/usr/local/mysql5.6/bin/mysqld_safe --defaults-file=./my.cnf --user=mysql &

如果没有报错,且日志文件/usr/local/mysql5.6/mysqld.log 里没有错误信息,基本就已经启动好了,可以通过ps 查看进程

ps -ef|grep mysql

a473829158f401258d56bb8fa82ad12c.png

7、设置mysql访问密码

/usr/local/mysql5.6/bin/mysqladmin -u root -P 3316 -S /data/mysql5.6/mysql.sock password 'root123'

这个密码设置后只允许localhost本地访问,还需要设置mysql远程访问,首先进入mysql

mysql -u root --socket=/data/mysql5.6/mysql.sock --port=3316 -p

--提示输入密码,输入 root123

mysql>grant all PRIVILEGES on *.* to root@'%' identified by 'root123456';

--设置之后需要刷新配置

mysql>flush privileges;

mysql>exit

grant 是数据库用于赋予用户权限的方法

grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;

8、客户端连接,在客户端就可以使用navicat等工具配置连接进行数据库操作了

730041ea18754ed7ef6fb3922dfa21a5.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值