`
swengineer
  • 浏览: 41538 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux下安装启动多个Mysql

阅读更多

 

网上找了N多资料,没有一个可以顺利成功的,郁闷,可能是水平有限吧...!本人经过不断的研究、测试,完整实现linux下启动两台Mysql,而且对mysql有了更深入的了解...废话不多说,走着!

步骤如下:

一、编译安装两个mysql,步骤如下

下载Mysql ,此处以Mysql-6.0.11-alpha.tar.gz 为例

安装第一个数据库(主数据库)

(红色 部分为默认数据库文件路径,可改成其他如:data、var等)

tar zxvf mysql-6.0.11-alpha.tar.gz

cd mysql-6.0.11-alpha

./configure --prefix=/usr/local/mysql --sysconfdir=/usr/local/mysql/etc --with-tcp-port=3306 --localstatedir=/usr/local/mysql/localstate
 --with-unix-socket-path=/tmp/mysql3306.sock --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312,binary --enable-thread-safe-client --with-plugins=innobase --with-mysqld-user=mysql --with-charset=utf8  --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static

make && make install

 

安装第二个数据库(从数据库)

tar zxvf mysql-6.0.11-alpha.tar.gz

cd mysql-6.0.11-alpha

./configure --prefix=/usr/local/mysql3307 --sysconfdir=/usr/local/mysql3307/etc --with-tcp-port=3307 --localstatedir=/usr/local/mysql3307/localstate

 --with-unix-socket-path=/tmp/mysql3307.sock --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312,binary --enable-thread-safe-client --with-plugins=innobase --with-mysqld-user=mysql --with-charset=utf8  --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static

make && make install


如需支持所有字符集 修改为:--with-extra-charsets=all 即可


二、分别初始化数据库脚本(在编译目录执行下)

scripts/mysql_install_db --basedir=/usr/local/mysql/ --user=mysql

scripts/mysql_install_db --basedir=/usr/local/mysql3307/ --user=mysql

 

注:可用--datadir=PATH参数指定数据库文件路径,默认为编译时-- localstatedir

三、修改从库配置文件

拷贝配置文件:

cp /usr/local/software/mysql-6.0.11-alpha/support-files/my-medium.cnf /usr/local/mysql/etc/my.cnf

cp /usr/local/software/mysql-6.0.11-alpha/support-files/my-medium.cnf /usr/local/mysql3307/etc/my.cnf

 

 四、修改各个数据库的my.cnf文件

主要内容如下:

添加InnoDB支持:

[client]

#password       = your_password

port            = 3307                      --数据库端口号

socket          = /tmp/mysqls.sock    --sock文件路径

default-character-set=utf8            --客户端UTF8连接

[mysqld]

port            = 3307                      --数据库端口号

socket          = /tmp/mysqls.sock    --sock文件路径

default-storage-engine=INNODB

default-character-set=UTF8           --默认字符集

init_connect='SET NAMES utf8'       --以UTF8连接

skip-name-resolve                        --取消DNS反向解析

lower_case_table_names=1            --不区分表名大小写
 



启动数据库(进入各自目录)

主:./mysqld_safe &

从:./mysqld_safe &


配置开机自动启动:

cp /usr/local/software/mysql-6.0.11-alpha/support-files/mysql.server /etc/init.d/mysql

cp /usr/local/software/mysql-6.0.11-alpha/support-files/mysql.server /etc/init.d/mysql3307

 

修改/etc/init.d/mysql3007中basedir与datadir

basedir=/usr/local/mysql3307
datadir=/usr/local/mysql3307/var

 


停止数据库

主:./mysqladmin shutdown

从:./mysqladmin shutdown

以上各项配置都可以自行修改,以满足业务需求。

 

CSDN本人原创.搬家至ITEYE.版权所有@Robot_G

  • 大小: 1.6 KB
  • 大小: 4.8 KB
分享到:
评论

相关推荐

    Linux下启动多个mysql服务器例子

    主要介绍了Linux下启动多个mysql服务器例子,本文还包括了3个可能遇到的问题及解决方法,需要的朋友可以参考下

    linux下启动多个不同版本的mysql服务.docx

    linux下启动多个不同版本的mysql服务.docx

    linux下启动多个不同版本的mysql服务.pdf

    linux下启动多个不同版本的mysql服务.pdf

    MySQL 5.7 For Linux的部署及启动与排错

    MySQL 5.7 For Linux的部署及启动与排错,这个适合新手看看,但内容很多

    linux下启动mysql服务

    其实提示找不到 /tmp/mysql.sock有时也并不是/tmp目录下没这个文件,是启动 命令不对,我碰到过 常见的几种启动方式,自己也不是记得很清楚,如果你确定tmp下有mysql.sock这 个文件不妨试试另外的几个命令 /usr/...

    MySql 5.1 参考手册.chm

    5.1.5. mysqld_multi:管理多个MySQL服务器的程序 5.2. mysqlmanager:MySQL实例管理器 5.2.1. 用MySQL实例管理器启动MySQL服务器 5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 ...

    MySQL 5.1中文手冊

    5.1.5. mysqld_multi:管理多个MySQL服务器的程序 5.2. mysqlmanager:MySQL实例管理器 5.2.1. 用MySQL实例管理器启动MySQL服务器 5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 ...

    MySQL-8.0.33-winx64 绿色安装包,源自官网,添加了 bat 脚本,支持配置、数据初始化;支持一键启动

    很多情况下需要在客户端发布时发布 MySQL 数据库,这种发布方式虽然存在文件资源较大、易出错等缺点,但是却可以让桌面产品的发布更加完整。 本文将阐述如何使用一个脚本启动并初始化 MySQL 8.0 的方法,涵盖数据库...

    MySQL 5.1参考手册

    5.1.5. mysqld_multi:管理多个MySQL服务器的程序 5.2. mysqlmanager:MySQL实例管理器 5.2.1. 用MySQL实例管理器启动MySQL服务器 5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项...

    《Linux服务器配置与管理》教学课件—第-11-章--MySQL-服务器配置.pptx

    启用仓库 在MySQL 5.7仓库安装完成后,会在"/etc/yum.repos.d/"目录下生成两个文件,即mysql-community.repo文件和mysql-community-source.repo文件,我们主要查看mysql-community.repo文件中的配置,在该文件中默认...

    MYSQL

    8.4.4.4 排序行 8.4.4.5 日期计算 8.4.4.6 NULL值操作 8.4.4.7 模式匹配 8.4.4.8 行计数 8.4.5 使用多个数据库表 8.5 获得数据库和表的信息 8.6 以批处理模式使用mysql 8.7 从...

    Linux XAMPP 64位

    它可以在Windows、Linux、Solaris、Mac OS X 等多种操作系统下安装使用,支持多语言:英文、简体中文、繁体中文、韩文、俄文、日文等。[1] 许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。...

    Linux XAMPP 32位

    它可以在Windows、Linux、Solaris、Mac OS X 等多种操作系统下安装使用,支持多语言:英文、简体中文、繁体中文、韩文、俄文、日文等。[1] 许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。...

    linux修改mysql数据库文件的路径

    mysql更改数据文件的存放路径感觉直接把/etc/my.cnf中的datadir改一下重启一下服务就行,但是从网上搜了n多资料,大部分都是更改my.cnf中的datadir及sock及启动脚本/etc/rc.d/init/mysqld中的datadir,按照网上提供...

    MySQL 5.1官方简体中文参考手册

    5.1.5. mysqld_multi:管理多个MySQL服务器的程序 5.2. mysqlmanager:MySQL实例管理器 5.2.1. 用MySQL实例管理器启动MySQL服务器 5.2.2. 连接到MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 ...

    Linux常用命令总结

    1.3、一次进入多个文件夹 1.4、返回上一级 1.5、直接进入根目录 1.6、创建一个目录 2、Redis中的相关操作命令 2.1、 开启redis 2.2 查看redis 是否开启成功(查看进程) 2.3 杀死某一个进程 2.4 用户客户端访问 2.5 ...

    MySQL中文参考手册.chm

    8.4.4.4 排序行 8.4.4.5 日期计算 8.4.4.6 NULL值操作 8.4.4.7 模式匹配 8.4.4.8 行计数 8.4.5 使用多个数据库表 8.5 获得数据库和表的信息 8.6 以批处理模式使用mysql ...

Global site tag (gtag.js) - Google Analytics