`
wxch2008
  • 浏览: 19667 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

linux下多mysql共存

阅读更多
下面安装MySQL 5.0.51a

由于我们安装的MySQL4.0.26的安装包类型是rpm包,所以,需要大家注意的是,
它使用的都是默认的设置,安装后生成的配置文件和数据库目录等等一系列的配置都是我们不能改变的。
因此,如果要在同一开发环境下安装两个数据库的话,我们就必须处理以下这些问题:
1.配置文件安装路径不能相同
2.数据库目录不能相同
3.启动脚本不能同名
4.端口不能相同
5..socket文件的生成路径不能相同
依据上面的各种要求:mysql5.0.51a.tar.gz的源码包安装做出以下调整:
--prefix=/usr/local/mysql5  ### 数据库安装目录
--localstatedir=/var/lib/mysql5  ### 数据库存放目录
--with-charset=gbk --with-collation=gbk_chinese_ci --with-extra-charsets=all ### 字符集gbk加载和gbk_chinese_ci加载,可处理中文乱码问题
其他的设置是对数据库的一下优化,在此就不再赘述。

参考了一些msyql5的安装文档,在这里感谢各位前辈
mysql-5.0.51a.tar.gz解压后的安装详解:

1# cd mysql-5.0.51a
2# mkdir /usr/local/mysql5

(这步骤中的诸多参数中,关键的参数已经在前面介绍了,如有不懂,请参看前面的介绍。)
3# ./configure
--prefix=/usr/local/mysql5
--localstatedir=/var/lib/mysql5 --with-comment=Source
--with-server-suffix=-Community
--with-mysqld-user=mysql
--without-debug
--with-big-tables
--with-charset=gbk --with-collation=gbk_chinese_ci --with-extra-charsets=all
--with-pthread
--enable-static
--enable-thread-safe-client
--with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static
--enable-assembler
--without-innodb
--without-ndb-debug
4# make
5# make install

6.# useradd mysql //添加 mysql 用户
7# cd /usr/local/mysql5
(注意:!!!在安装第二个数据库时候,虽然在./configure后加上了--localstatedir=/var/lib/mysql5但是并未在/var /lib下产生mysql5目录,所以我们要在源码包编译安装完成之后先检查一下是否有这个目录,如果没有的话一定要手动创建一个命令:# mkdir /var/lib/mysql5再执行第八步骤。)
8# bin/mysql_install_db --user=mysql
(在确保第七步骤正确完成之后,在执行本步骤时,如果正确的话,在/var/lib/mysql5下将会产生相应的数据库文件。)
9# chown -R root:mysql .       //设置权限,注意后面有一个 "."
10# chown -R mysql /var/lib/mysql5   //设置 mysql 目录权限
11# chgrp -R mysql .          //注意后面有一个 "."
12# cp share/mysql/my-huge.cnf /etc/my5.cnf
13# cp share/mysql/mysql.server /etc/rc.d/init.d/mysql5 //开机自动启动 mysql。
14# chmod 755 /etc/rc.d/init.d/mysql5
15# chkconfig --add mysql5

16以下是安装第二个数据库时,对启动文件mysql5和配置文件my5.cnf做出的必要修改。
===================================================================================
/etc/rc.d/init.d/mysql5

修改下面的内容:

1.datadir=/var/lib/mysql5
2.conf=/etc/my5.cnf
3.把"$bindir/mysqld_safe --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &"替换为(双引号中的)
"$bindir/mysqld_safe --defaults-file=/etc/my5.cnf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &"(双引号中的)

/etc/my5.cnf

修改下面的内容:

port = 3307 ###修改相关的端口
socket文件生成路径

把[client]和[mysqld]中的port号都改成3307,
socket = /tmp/mysql.sock改成socket = /tmp/mysql5.sock
[client]
#password = your_password

port  = 3307
socket  = /tmp/mysql5.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port  = 3307
socket  = /tmp/mysql5.sock
==================================================================================
17# /etc/rc.d/init.d/mysql5 start           //启动 MySQL
18# bin/mysqladmin -u root password "password_for_root" ### 设置数据库JDBC连接的密码
    注意事项:此密码与从终端客户端登陆数据库的密码是否为同一密码,还存在疑问。
              设置终端客户端登陆数据库的密码:(默认设置:用户名:root 密码:(空))
19# cd /usr/local/mysql5/bin(进入数据库安装目录下执行以下命令)
20# ./mysql -u root -p (登陆数据库,以mysql>开头均属数据库内的操作,注意不要丢掉分号
mysql> use mysql;

mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;
21# service mysql5 stop               //关闭 MySQL

22tomcat部署文件下的修改:
修改/usr/tomcat/jetmambo/WEB-INF/classes/jdbc.properties
1.3306改成3307
2.jdbc.password=system(注意事项:这个密码就是数据库JDBC连接的密码)

修改后如下:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3307/timef3_cmd?&useUnicode=true&characterEncoding=gbk
jdbc.username=root
jdbc.password=system

23启动数据库和WEB服务器,验证数据库安装是否成功
/etc/init.d/mysql restart
/etc/init.d/mysql5 restart
注意事项:必须保持两个数据库都开启服务,否则tomcat报SQLException
/usr/tomcat/bin/catalina.sh run

补充说明:

24Linux下默认数据库中表名不忽略大小写,做如下设置:
/etc/my5.cnf

# The MySQL server
[mysqld]
lower_case_table_names = 1 ### 1为忽略大小写 0为不忽略大小写
port  = 3307
socket  = /tmp/mysql5.sock

————————————————————————————————————
遗留问题,不知那位大侠可以解答一下:
在终端进入
>mysql时
报:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
错误。
----------------------------------------------------------------
问题解决了

./mysql -uroot -p -S /tmp/mysql5.sock

如果不加参数-S,则在默认目录去找mysql.sock
分享到:
评论

相关推荐

    linux centos mysql配置文件说明.docx

    例如,`my-medium.cnf`适用于系统内存不超过128MB的情况,特别是在MySQL与其他应用程序(如Web服务器)共存的场景下。 #### 三、my-medium.cnf配置文件详解 `my-medium.cnf`是这些预设配置文件之一,下面将详细介绍...

    Linux系统下Web服务器的搭建与设计.pdf

    同时,Linux 系统也支持多用户操作,每个用户对文件或设备的权限都不相同,同时 Linux 还解决了多个用户不同权限的冲突,使所有用户都可以共存。 在搭建 Web 服务器的过程中,我们使用了 Apache 和 Tomcat 软件作为...

    niginx多php版本共存

    在 Linux 系统下,为了满足不同应用对 PHP 版本的需求,实现多版本 PHP 的共存是一个常见且实用的需求。本文将详细介绍如何在一台服务器上安装和配置多个 PHP 以及 Nginx 的方法。 #### 二、环境准备 - **操作系统*...

    Linux系统中设置多版本PHP共存配合Nginx服务器使用

    Linux系统中配置多版本PHP与Nginx服务器共存涉及的概念和操作主要包括以下几个方面: 1. LNMP环境:LNMP是指Linux操作系统、Nginx服务器、MySQL数据库和PHP语言所构成的一种网站服务器架构。在这种架构中,Nginx...

    sqlserver与mysql数据库同步

    在IT行业中,数据库同步是一个重要的任务,特别是在多数据库系统共存的情况下。本主题将深入探讨如何实现SQL Server与MySQL数据库之间的数据同步,这对于确保数据一致性、实时性以及跨平台的数据交换具有重大意义。 ...

    Linux系统下多版本php共存的解决方案(超简单)

    自php7问世,身为最新版本控的我马上升级体验,但是由于服务器上还有旧程序在运行,只好部署一个php多版本共存环境。 现有环境是lnmp – CentOS 6.7 – nginx 1.10.1 – mariadb-10.0.26 – php 7.0.8 为了更好...

    linux视频教程下载.pdf

    - “国嵌教程 - Linux基础(Linux C)”可能涵盖了Linux下的C语言编程,包括标准库、系统调用、多线程编程等,适合想要开发Linux系统级程序的程序员。 通过这些丰富的Linux视频教程,学习者可以根据自己的需求和...

    Linux学习笔记(关于linux系统的一点学习心得)

    在本例中,使用了一台配备Windows XP操作系统的Toshiba Satellite笔记本电脑,通过预留6GB空间用于Linux安装,确保了双系统的共存。 **Swap分区**:设置为物理内存大小的两倍(本例中为512MB),这是为了增强系统的...

    Linux 2010版宝典

    10. **虚拟化技术**:简单介绍Linux下的虚拟化工具,如KVM和VirtualBox,为多系统共存和资源管理提供解决方案。 11. **故障排查**:提供了一些常见的错误诊断方法和调试工具,帮助读者解决系统问题。 虽然这本2010...

    从Windows转向Linux教程V2

    4. **文件系统和权限**:Linux采用层次结构的文件系统,根目录(/)下包含所有其他目录。Linux对文件和目录有严格的权限控制,理解`chmod`和`chown`命令可以帮助用户管理权限。 5. **软件管理**:Linux通常通过包...

    Linux实用培训教程

    这个教程可能涵盖了从安装Linux系统,理解其文件系统结构,到执行日常管理任务,编写脚本,甚至进行网络配置和服务器管理等多个方面。下面我们将详细探讨这些关键知识点。 一、Linux简介 Linux是一种自由和开放源码...

    甲骨文继续支持Linux.pdf

    同样,开源数据库MySQL在全球范围内的每日下载量达到5万人次,确立了其在开源数据库领域的领导地位。 综上所述,甲骨文与Linux的结合,以及开源软件的蓬勃发展,共同塑造了当今多元化、开放和竞争激烈的IT生态环境...

    一张linux的试卷(简单的).docx

    5. Linux完全可以在同一台机器上与MS-DOS、OS/2、Windows等其他操作系统共存,这是通过多引导设置实现的。 6. `ls`命令在Linux中用于列出目录中的文件和子目录,并非变换工作目录。 7. 使用`rpm -qa | grep vsftpd`...

    Atlas+keepalived+mysql(实现HA+主从同步).docx

    - Atlas部署在每个数据库节点上,与MySQL服务器共存,可以优化数据库连接管理和提高系统性能。 3. **LVS(Linux Virtual Server)**: - LVS是Linux内核中的负载均衡技术,它可以在不修改应用代码的情况下,实现...

    面向企业应用比较四款流行的Linux服务器.pdf

    安装过程方面,四个发行版都能自动识别硬件,支持多启动与Windows共存,并且都包含了建立基本网站所需的应用程序,如Apache Web服务器、PHP、SMTP服务器、MySQL或PostgreSQL数据库、OpenLDAP目录服务以及Kerberos...

    使用Linux中不得不防的几大陷阱.pdf

    频繁的内核更新可能导致多个内核版本共存,但并非所有内核都可用于启动。保持使用一个经过验证的稳定内核版本是必要的。当升级内核时,应确保新的内核版本能够正常工作,同时保留旧的内核作为备份,以防万一。 总结...

Global site tag (gtag.js) - Google Analytics