centos环境下配置多个版本的mysql
来源:互联网 发布:阿里云的产品好吗 编辑:程序博客网 时间:2024/05/22 05:29
场景 :有业务需要需要 把原有版本的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 = 3307socket = /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.sock9.2 grant all on *.* to 'mysql3307'@'%' identified by 'mysql3307';
10、设置启动脚本并加入启动服务中
目前操作没有操作成功,主要发现的问题是,尽管调整了my.cnf,但是指向的mysql文件还是会不准确,导致id_logfile 生成会出问题。理论上应该是可行,也许是读取my.cnf存在缓存更新(本服务器重启影响有点大)。同时mysql启动都是需要开启一个新的进程的,因此 如果设置自动启动服务的话,还需要注意
lockdir=‘/var/lock/subsys‘ #mysql进程锁
lock_file_path=”$lockdir/mysql3307”,
再更新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
- centos环境下配置多个版本的mysql
- centos下配置多个SVN版本库方法
- Linux(CentOS)环境下MySQL的安装、配置与使用
- linux(centos)svn进行多个版本库的配置
- Linux环境CentOS下JDK安装及环境变量配置、多个Tomcat的安装及开机自启配置
- centos linux 版本下 安装apche php mysql 环境
- VisualStudio2015配置共存的多个版本Python环境
- 【阿里云环境配置】Centos 下Mysql的安装和配置
- CentOS 6.5 版本下 MySQL 5.1.73 版本的安装
- centos下linux的网络环境配置
- Centos环境下配置Aapache+2个tomcat8 的动静分离,负载均衡
- linux下启动多个不同版本的mysql服务
- linux下启动多个不同版本的mysql服务
- centos环境下运行多实例mysql
- linux(64)centos(6.7)环境下mysql的安装、主从复制的配置
- centos下安装多个mysql数据库
- centos下mysql配置
- myeclipse下 配置 多个相同版本的tomcat实例
- Eclipse下用javadoc导出Android项目的帮助文档
- 平面扫描思想在ACM竞赛中的应用(转载)
- UNIX 环境高级编程(五)—— unistd.h
- linux下supervisord的简单使用
- Binary Tree Paths
- centos环境下配置多个版本的mysql
- 类的定义和实例化
- ubuntu 15.10 更改设备网卡名称为eth0 网卡
- Linux查看Nginx或者其他程序的安装目录
- iOS开发手机号判断(截止到2016年5月的所有号段)
- ASIHTTPRequest介绍
- jxl导入导出Excel
- 保存Bitmap到本地文件夹
- svn检查文件名中是否有空格