centos 配置多个mysql_centos环境下配置多个版本的mysql

标签:

场景 :有业务需要需要 把原有版本的MySQL 升级到 更高版本的mysql。

解决方案:为了减轻mysql升级对业务产生的影响,可以在当前服务器下 配置更高版本的mysql(多个版本的)来过渡

处理步骤:

1、确认并梳理原有版本的数据库和对应配置文件

如: mysql 安装目录:/usr/local/mysql ,mysql 存储的数据文件; mysql sock文件 :/tmp/ mysql.sock, mysql的配置文件 :/etc/my.cnf

2、新建新的mysql 的管理账号:

groupadd mysql3307

useradd -g mysql3307 mysql3307

3、新增安装文件并解压文件

3.1 mkdir mysql3307

mkdir /data/mysqldb3307

3.2 mv /home/user/mysql-5.6.4.tar.gz /usr/mysql3307/mysql-5.6.4.tar.gz

tar xzvf mysql-5.6.4.tar.gz && cd mysql-5.6.4

3.3 cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql3307 \

-DMYSQL_UNIX_ADDR=/tmp/mysql3307.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DMYSQL_DATADIR=/data/mysqldb3307 \

-DMYSQL_TCP_PORT=3307 \

-DENABLE_DOWNLOADS=1

3.4make && make install

4.修改mysql安装目录

4.1 cd /usr/local/mysql3307

chown -R mysql:mysql

4.2 cd /data/mysqldb3307

chown -R mysql:mysql .

5、同样初始化数据库

cd /usr/local/mysql

scripts/mysql_install_db --user=mysql3307 --datadir=/data/mysqldb3307 --basedir=/usr/local/mysql3307

6、复制并修改配置文件

6.1、cp /usr/local/mysql3307/support-files/my-default.cnf /etc/my3307.cnf

6.2、vi my3307.cnf

指定好对应的

port = 3307 --修改端口

socket = /tmp/mysql3307.sock --修改sock

# Here follows entries for some specific programs

# The MySQL server

[mysqld]

port = 3307

socket = /tmp/mysql3307.sock

7、启动本次mysql服务

/usr/local/mysql3307/bin/mysqld_safe –defaults-file=/etc/my3307.cnf &

8、设置root密码  mysqladmin -P 3307 -S/tmp/mysql3307.sock -u root password root

9、root访问数据库,并设置远程操作账号

9.1 /usr/local/mysql3307/bin/mysql -uroot -p -S/tmp/mysql3307.sock

9.2 grant all on *.* to ‘mysql3307‘@‘%‘ identified by ‘mysql3307‘;

10、设置启动脚本并加入启动服务中

目前操作没有操作成功,主要发现的问题是,尽管调整了my.cnf,但是指向的mysql文件还是会不准确,导致id_logfile 生成会出问题。理论上应该是可行,也许是读取my.cnf存在缓存更新,需要新更新my.cnf 在复制到 /etc/init.d/下

其它问题:

问题1:  Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid).  解决:  修改/etc/my.cnf 中datadir,指向正确的mysql数据库文件目录

问题2:  ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)  解决:  新建一个链接或在mysql中加入-S参数,直接指出mysql.sock位置。  ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock

/usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock

MySQL问题解决:-bash:mysql:command not found  因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,  系统在/usr/bin下面查此命令,所以找不到了  解决办法是:  ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可

问题3:修改root密码 增加安全性  mysqladmin -u root password ‘123456’  注:也可运行安全设置脚本,修改MySQL用户root的密码,同时可禁止root远程连接,移除test数据库和匿名用户。  /usr/local/mysql/bin/mysql_secure_installation

鼎峰小胡

QQ.2881064155

Skype.2881064155@qq.com

标签:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值