首先说明一个场景:我的电脑是ubuntu系统,之前apt-get自动安装过mysql。这也是出现错误最多的原因之一。
- 6.mkdir mysql
- 7.groupadd mysql
- 8.useradd -r -g mysql mysql
- # make clean
- # rm -f CMakeCache.txt
- # rm -rf /etc/my.cnf
- 9.cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
- -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8
- -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all
- -DENABLED_LOCAL_INFILE=1
- make
- make install
这个表示mysql源码安装已经完成了,现在要做就是初始化用户了,也就是多实例中最重要的一部了,以后的每一步都要注意命令执行后的结果:
- cd /usr/local/mysql
- chown -R root:mysql .
- chown -R mysql:mysql data
- 11.cp support-files/my-medium.cnf /etc/my.cnf
- 12.cd /usr/local/mysql
- scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3308/my.cnf --datadir=/usr/local/mysql/data_3308/
上面的mysql_install_db这个命令就是来进行初始化新用户。这里要注意命令执行后的结果,
- 第一次的时候我的执行结果是这样的:
- root@zhou:/usr/local/mysql# scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3307/my.cnf --datadir=/usr/local/mysql/data_3307/
- Installing MySQL system tables...
- 130107 10:25:47 [ERROR] COLLATION 'latin1_swedish_ci' is not valid for CHARACTER SET 'utf8'
- 130107 10:25:47 [ERROR] Aborting
- 130107 10:25:47 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete
这里可以看出已经出现了错误,原因是什么,大家应该可以看明白了,自己太马虎了。导致自己重新执行了一次cmake
然后重新进行上面的命令了。直到我们看到这样的结果:表示初始化成功了,恭喜你下面可以进行下面的操作了。
- root@zhou:/usr/local/mysql# mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/data3307/my.cnf --datadir=/usr/local/mysql/data3307/
- Installing MySQL system tables...
- OK
- Filling help tables...
- OK
这时他会在我们的data目录中生成一些mysql库啊和test库等这些基本信息。
对了要注意了,权限的分配,一不小心mysql的就无法读取相关文件的权利。
- mysqld_safe --defaults-file=/usr/local/mysql/data_3307/my.cnf &
- 130107 13:35:36 [Note] Server socket created on IP: '0.0.0.0'.
- 130107 13:35:36 [ERROR] /usr/local/mysql/bin/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
- 130107 13:35:36 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)
- 130107 13:35:36 mysqld_safe mysqld from pid file /usr/local/mysql/data3307/mysql.pid ended
这里的错误也是很明显的原因就是我们没有读取host。frm的权限了,补救的办法又两种:一种是直接到目录下给mysql附上这样的权限,第二种就是追究它原因为什么会那样呢?原因是我们在初始化的时候,没有加入--user=mysql这个参数才导致生成的文件全市root权限。
在下次做时,就需要这样的命令了:
- 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确出现错误了,
- root@zhou:/usr/local/mysql/tmp# mysql
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
错误原因:当在没有指定那个数据库服务器是它是有个默认启动计划,所以这里可以看出它还是在等待mysql 3306的那个服务器的。
- root@zhou:/etc/init.d# mysql -h127.0.0.1 -P3307
mysql多实例安装详解的更多相关文章
-
MySQL Windows版安装详解
一.下载MySQL MySQL官网https://dev.mysql.com提供了Windows下的安装版msi和解压版zip,其中均包含32和64位版本,mis版本与SqlServer安装基本一致N ...
-
MySQL 之mydumper安装详解
方法一: 安装依赖包: 1 yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake make 下载二 ...
-
MySQL数据库图文安装详解及相关问题
(尊重劳动成果,转载请注明出处: http://blog.csdn.net/qq_25827845/article/details/53366444冷血之心的博客) 首先说明:安装目录中不能有中文和空 ...
-
MYSQL之数据库初识、安装详解、sql语句基本操作
目录 MYSQL之数据库初识及安装详解 1.什么是数据库? 1.什么是数据?(data) 2.什么是数据库?(databases,简称DB) 2.为什要用数据库? 3.什么是数据库管理系统?(Data ...
-
Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
-
mysql配置文件my.cnf详解
原文地址:mysql配置文件my.cnf详解 作者:gron basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = path 给出存放着字符集的 ...
-
zabbix agent安装详解
安装 Installing repository configuration package Zabbix 2.2 for RHEL5, Oracle Linux 5, CentOS 5: rpm - ...
-
zabbix server安装详解
简介 zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以 ...
-
Oracle Database 12c Release 2安装详解
第1章 Oracle Database 12c Release 2安装详解 1.1 下载方法 oracle官网https://www.oracle.com 1)打开官方网站,找到下载连接 2)选择更多 ...
随机推荐
-
ubuntu 创建用户
http://www.jb51.net/article/45848.htm 创建用户
-
vi编辑器的使用
在命令模式下进入编辑模式,输入字母"a","A","i","I","o","O" ...
-
Tuxedo 超时时间控制(转贴)
以下是转贴: TUXEDO超时控制全功略 摘要: 本<功略>集中了TUXEDO应用中,可能涉及到的所有时间参数,并分别对其进行详细描述,不但对其出处.取值等基本属性进行查证,而且,通过分析 ...
-
Python3实现TCP端口扫描器
本文来自 高海峰对 玄魂工作室 的投稿 作者:高海峰 QQ:543589796 在渗透测试的初步阶段通常我们都需要对攻击目标进行信息搜集,而端口扫描就是信息搜集中至关重要的一个步骤.通过端口扫描我们可 ...
-
OK335xS Linux kernel check clock 24M hacking
/****************************************************************************** * OK335xS Linux kern ...
-
剑指OFFER之栈的压入、弹出序列(九度OJ1366)
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...
-
Akka(42): Http:身份验证 - authentication, autorization and use of raw headers
当我们把Akka-http作为数据库数据交换工具时,数据是以Source[ROW,_]形式存放在Entity里的.很多时候除数据之外我们可能需要进行一些附加的信息传递如对数据的具体处理方式等.我们可以 ...
-
MariaDB Galera集群部署--技术流ken
Galera集群介绍 MariaDB集群是MariaDB同步多主机集群.它仅支持XtraDB/ InnoDB存储引擎. 主要功能 同步复制 真正的multi-master,即所有节点可以同时读写数据库 ...
-
3D打印社区
http://mc.dfrobot.com.cn/forum.php?mod=forumdisplay&fid=100&filter=typeid&typeid=9
-
bzoj2560串珠子(子集dp)
铭铭有n个十分漂亮的珠子和若干根颜色不同的绳子.现在铭铭想用绳子把所有的珠子连接成一个整体. 现在已知所有珠子互不相同,用整数1到n编号.对于第i个珠子和第j个珠子,可以选择不用绳子连接,或者在ci, ...