首先说明一个场景:我的电脑是ubuntu系统,之前apt-get自动安装过mysql。这也是出现错误最多的原因之一。

安装过程,其中充斥着各种错误:

  1. 6.mkdir mysql
  2. 7.groupadd mysql
  3. 8.useradd -r -g mysql mysql
  4. # make clean
  5. # rm -f CMakeCache.txt
  6. # rm -rf /etc/my.cnf
  7. 9.cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
  8. -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8
  9. -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all
  10. -DENABLED_LOCAL_INFILE=1
  11. make
  12. make install

这个表示mysql源码安装已经完成了,现在要做就是初始化用户了,也就是多实例中最重要的一部了,以后的每一步都要注意命令执行后的结果:

  1. cd /usr/local/mysql
  2. chown -R root:mysql .
  3. chown -R mysql:mysql data
  4. 11.cp support-files/my-medium.cnf /etc/my.cnf
  5. 12.cd /usr/local/mysql
  1. scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3308/my.cnf --datadir=/usr/local/mysql/data_3308/

上面的mysql_install_db这个命令就是来进行初始化新用户。这里要注意命令执行后的结果,

  1. 第一次的时候我的执行结果是这样的:
  2. root@zhou:/usr/local/mysql# scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3307/my.cnf --datadir=/usr/local/mysql/data_3307/
  3. Installing MySQL system tables...
  4. 130107 10:25:47 [ERROR] COLLATION 'latin1_swedish_ci' is not valid for CHARACTER SET 'utf8'
  5. 130107 10:25:47 [ERROR] Aborting
  6. 130107 10:25:47 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

这里可以看出已经出现了错误,原因是什么,大家应该可以看明白了,自己太马虎了。导致自己重新执行了一次cmake 
然后重新进行上面的命令了。直到我们看到这样的结果:表示初始化成功了,恭喜你下面可以进行下面的操作了。

  1. root@zhou:/usr/local/mysql# mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/data3307/my.cnf --datadir=/usr/local/mysql/data3307/
  2. Installing MySQL system tables...
  3. OK
  4. Filling help tables...
  5. OK

这时他会在我们的data目录中生成一些mysql库啊和test库等这些基本信息。 
对了要注意了,权限的分配,一不小心mysql的就无法读取相关文件的权利。

  1. mysqld_safe --defaults-file=/usr/local/mysql/data_3307/my.cnf &
  2. 130107 13:35:36 [Note] Server socket created on IP: '0.0.0.0'.
  3. 130107 13:35:36 [ERROR] /usr/local/mysql/bin/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
  4. 130107 13:35:36 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)
  5. 130107 13:35:36 mysqld_safe mysqld from pid file /usr/local/mysql/data3307/mysql.pid ended

这里的错误也是很明显的原因就是我们没有读取host。frm的权限了,补救的办法又两种:一种是直接到目录下给mysql附上这样的权限,第二种就是追究它原因为什么会那样呢?原因是我们在初始化的时候,没有加入--user=mysql这个参数才导致生成的文件全市root权限。 
在下次做时,就需要这样的命令了:

  1. root@zhou:/usr/local/mysql# mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/data3307/my.cnf --datadir=/usr/local/mysql/data3307/ --user=mysql

ok,这时我们可以通过命令来查看一下我们开通的服务个数,然后登录上去进行基本的操作,权限,键表啊,replication啊等等。

这里启动了三个mysql服务器后,发现只能登录到3306上面的服务去,而其他的就是没法登录,当我把3307 3306杀掉后,登录mysql确出现错误了,

  1. root@zhou:/usr/local/mysql/tmp# mysql
  2. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

错误原因:当在没有指定那个数据库服务器是它是有个默认启动计划,所以这里可以看出它还是在等待mysql 3306的那个服务器的。

  1. root@zhou:/etc/init.d# mysql -h127.0.0.1 -P3307

mysql多实例安装详解的更多相关文章

  1. MySQL Windows版安装详解

    一.下载MySQL MySQL官网https://dev.mysql.com提供了Windows下的安装版msi和解压版zip,其中均包含32和64位版本,mis版本与SqlServer安装基本一致N ...

  2. MySQL 之mydumper安装详解

    方法一: 安装依赖包: 1 yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake make 下载二 ...

  3. MySQL数据库图文安装详解及相关问题

    (尊重劳动成果,转载请注明出处: http://blog.csdn.net/qq_25827845/article/details/53366444冷血之心的博客) 首先说明:安装目录中不能有中文和空 ...

  4. MYSQL之数据库初识、安装详解、sql语句基本操作

    目录 MYSQL之数据库初识及安装详解 1.什么是数据库? 1.什么是数据?(data) 2.什么是数据库?(databases,简称DB) 2.为什要用数据库? 3.什么是数据库管理系统?(Data ...

  5. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  6. mysql配置文件my.cnf详解

    原文地址:mysql配置文件my.cnf详解 作者:gron basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = path 给出存放着字符集的 ...

  7. zabbix agent安装详解

    安装 Installing repository configuration package Zabbix 2.2 for RHEL5, Oracle Linux 5, CentOS 5: rpm - ...

  8. zabbix server安装详解

    简介 zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以 ...

  9. Oracle Database 12c Release 2安装详解

    第1章 Oracle Database 12c Release 2安装详解 1.1 下载方法 oracle官网https://www.oracle.com 1)打开官方网站,找到下载连接 2)选择更多 ...

随机推荐

  1. jquery的功能函数

    1.$.boxModel <!DOCTYPE html> <html> <head> <script src="/jquery/jquery-1.1 ...

  2. [Android Studio] Android Studio快速定位当前打开的文件在哪个目录(package)下

    转载自:http://blog.csdn.net/hyr83960944/article/details/38067499 在Eclipse中有一个很好的功能,就是比如我打开一个AActivity,左 ...

  3. Storm和Spark Streaming框架对比(转)

    原文链接:Storm和Spark Streaming框架对比 Storm和Spark Streaming两个都是分布式流处理的开源框架.但是这两者之间的区别还是很大的,正如你将要在下文看到的. 处理模 ...

  4. SQL Server会话KILL不掉,一直处于KILLED /ROLLBACK状态情形浅析[转]

    本文将为您描述SQL Server会话KILL不掉,一直处于KILLED /ROLLBACK状态情形浅析,教程操作方法: 今天遇到一个很奇怪的情况,发现一个会话异常,这个会话只是在执行一个简单的存储过 ...

  5. js 获取url的get传值函数

    function getvl(name) { var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s| ...

  6. 项目笔记:创建XML文件和导出功能

    一.创建XML文件: 要生成的XML结构: //创建文件夹 private void createFilePah(String path){ File file = new File(path); i ...

  7. JDBC基本操作介绍

    一 .JDBC主要的API介绍 JDBC为开发人员提供了一套标准的API,都是由JAVA语言编写的类和接口.用于连接数据库和执行SQL语句.JDBC也是JAVA核心类库的一部分,位于Java.sql包 ...

  8. Android 中的长度单位具体解释

    一.介绍一下 dp 和 sp. dp 也就是 dip.这个和 sp 基本类似.假设设置表示长度.高度等属性时能够使用 dp 或 sp.但假设设置字体,须要使用 sp. dp 是与密度无关,sp除了与密 ...

  9. C#应用视频教程1.2 Socket通信客户端实现

    接下来我们尝试实现最简单的Socket客户端,为了确保只可能你的代码有问题,服务器要先用别人成熟的代码测试(这也是编程的一个技巧,先不要用自己写的客户端测试自己写的服务器,这样出了问题你也不知道谁有问 ...

  10. 检索COM类工厂的组件失败:80040111

    检索 COM 类工厂中 CLSID 为 {--} 的组件失败,原因是出现以下错误: 80040111.如图: 这种问题可能由多种情况造成,目前我遇到两种: 操作系统版本问题 如果是在Win7 64版本 ...