linux下mysql部署
mysql
1、拓扑结构
mysql集群有如下三层:
- 应用程序层:负责与mysql服务器通信的各种应用程序。
- Mysql服务器层:处理SQL命令,并与NDB存储引擎通信和Mysql服务器。
- NDB集群组件层:NDB集群组件有时也称数据节点,负责处理查询,然后将结果返回给mysql服务器。
- Management层:负责管理SQL与NDB节点
拓扑结构图如下所示:
Management:192.168.0.10
NDB节点:IP地址:192.168.0.20
NDB节点:IP地址:192.168.0.30
SQL节点:IP地址:192.168.0.20
SQL节点:IP地址:192.168.0.30
2、多机部署
2-1、初始化系统
每个节点都操作
systemctl disable firewalld
vim /etc/selinux/config
SELINUX=disabled
2-2、依赖包安装
yum install wget gcc gcc-c++ make
cmake ncurses-devel libtool zilib-devel –y
注:此处cmake是mysql
5.5之后版本所必需的,5.5之后的版本将cmake取代configure;
2-3、mysql管理节点
vim .../mysql-cluster/config.ini
[ndbd
default]
# Options
affecting ndbd processes on all data nodes:
NoOfReplicas=2 # Number of replicas
DataMemory=80M # How much memory to allocate for data
storage
IndexMemory=18M # How much memory to allocate for index
storage
#ServerPort=2202 # This the default value; however, you can
use any
[ndb_mgmd]
#
Management process options:
NodeId=1
HostName=192.168.1.150 # Hostname or IP address of MGM node
DataDir=/var/lib/mysql-cluster # Directory for MGM node log files
[ndbd]
HostName=192.168.1.151 # Hostname or IP address
NodeId=2 # Node ID for this data
node
DataDir=/usr/local/mysql/data # Directory for this data node's data files
[ndbd]
# Options
for data node "B":
HostName=192.168.1.152 # Hostname or IP address
NodeId=3 # Node ID for this data
node
DataDir=/usr/local/mysql/data # Directory for this data node's data files
[mysqld]
NodeId=4
HostName=192.168.1.153 # Hostname or IP address
[mysqld]
NodeId=5
HostName=192.168.1.154
2-4、ndb节点(数据节点)
vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/sock/mysql.sock
user=mysql
symbolic-links=0
ndbcluster
ndb-connectstring=192.168.1.150
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql_cluster]
ndb-connectstring=192.168.1.150
初始化数据库:
mysql_install_db --user=mysql
--basedir=/usr/local/mysql--datadir=/usr/local/mysql/data
会初始化mysql的data目录,并且创建那些系统表。
同样也会初始化系统表空间并且关联innodb表与数据结构。
chown-R mysql.mysql /usr/local/mysql
2-5、SQL节点
vim /etc/my.cnf
[client]
socket=/usr/local/mysql/sock/mysql.sock
[mysqld]
ndbcluster
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/sock/mysql.sock
ndb-connectstring=192.168.1.150
[mysql_cluster]
ndb-connectstring=192.168.1.150
mysql_install_db --user=mysql --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data
chown-R mysql.mysql /usr/local/mysql
2-6、把mysql添加为系统服务
cp
mysql/support-files/mysql.server
/etc/rc.d/init.d/
chmod
+x /etc/rc.d/init.d/mysql.server
chkconfig
--add mysql.server
3、Cluster启动
3-1、启动管理节点
首次启动需要加 --initial
mysql/bin/ndb_mgmd -f
/data/mysql-cluster/config.ini --initial
报错的话:
mysql/bin/ndb_mgmd --skip-config-cache -f
/data/mysql-cluster/config.ini --initial
3-2、启动数据节点
首次启动需要+
--initial
/data/mysql/bin/ndbd
--initial
3-3、启动 SQL 节点
/data/mysql/bin/mysqld_safe --user=mysql
&
3-4、查看集群状态
管理节点
ndb_mgm
show
4、单机部署
4-1、解压安装
tar zxvf
mysql-cluster-gpl-7.6.6-linux-glibc2.12-x86_64.tar.gz
mv
mysql-cluster-gpl-7.6.6-linux-glibc2.12-x86_64/ mysql
mkdir sock
mkdir /var/lib/mysql
bin/mysql_install_db --user=mysql
--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
cp support-files/mysql.server
/etc/init.d/mysql
vim data/z3.pid
chmod 755 z3.pid
chown -R mysql.mysql mysql
4-2、配置
vim /etc/my.cnf
[client]
default-character-set=utf8
socket=/usr/local/mysql/sock/mysql.sock
#user=root
#password=123321
host=localhost
port=3306
[mysqld]
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/sock/mysql.sock
user=mysql
#
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
skip-grant-tables
//忽略登录密码
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysqld.pid
4-3、启动
service mysql start(stop、status)
4-4、登录
mysql/bin/mysql -uroot -p
4-5、授权
grant all privileges on *.* to 'user'@'%' indetified by 'password' with grant option //授权
flush privileges //使立即生效
linux下mysql部署的更多相关文章
- linux下MySQL表名忽略大小写设置
最近公司项目的MySQL数据库要迁移到linux下,部署时日志总是显示报找不到一个表,用MYSQL查看明明有这个表.后来经百度,原来LINUX下的MYSQL默认是区分表名大小写的. 用命令查看当前是否 ...
- linux 下mysql的启动 、调试、排错
Linux 下 MySQL 启动与关闭 说明 一.启动 1.1 MySQL 进程 可以用ps 命令查看进程: [root@rac2 ~]# ps -ef|grep mysql root 21 ...
- Linux下MySQL/MariaDB Galera集群搭建过程【转】
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- Linux下MySql变量修改遇到的问题记录
一.问题记录: 项目上需要使用mysql的过程来自动化构建一批数据,但是调用的时候总是报找不到表或者过程 二.排查过程: (1)首先终端连接mysql后发现,无论表还是过程在数据库中都是存在的,排除了 ...
- (原创)Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)
« CloudStack+XenServer详细部署方案(10):高级网络功能应用 (总结)CentOS Linux 5.x在GPT分区不能引导的解决方法 » 2013-1 11 (原创)Linux下 ...
- Linux下MySQL报Table 'xxx' doesn't exist错误解决方法,表名存在大小写区分
Linux服务器上在线装了个MySQL,但是部署web应用时一直报后台一直报错:Table 'xxx' doesn't exist. 本地测试一直都是正常的,同样的代码,同样的数据库,表是存在的,但是 ...
- linux下如何部署php项目?
linux下部署php项目环境可以分为两种,一种使用Apache,php,mysql的压缩包安装,一种用yum命令进行安装. 使用三种软件的压缩包进行安装,需要手动配置三者之间的关系.apache和p ...
- Linux下MySQL忘记密码
系统:CentOS6.6 64位 参考文档(截图请看原网址): Linux下MySQL忘记root密码怎么办_百度经验 http://jingyan.baidu.com/article/1709ad8 ...
- linux下mysql远程访问
// */ // ]]> linux下mysql远程访问 Mysql默认root用户只能本地访问,不能远程连接管理mysql数据库,但项目中必须要远程导 入导出数据,所以研究了一下. Tab ...
随机推荐
- fatal: unable to access 'https://github.com/Homebrew/brew/'
最近安装 Homebrew 遇到的坑,总结一下. 我的 Mac 版本是 10.13.6. 首先安装 Homebrew /usr/bin/ruby -e "$(curl -fsSL https ...
- 学习ES7+ES8
es6 语法:http://es6.ruanyifeng.com/#docs/async 作者:阮一峰 撰文为何 身为一个前端开发者,ECMAScript(以下简称ES)早已广泛应用在我们的工作 ...
- 笔记四(Competitor Analysis Test小结)
1.关机后启动电脑,测试BIOS的POST time 2.进入睡眠模式后,按任意键,通过Windows logs查看bios的init时间 3.进入BIOS setup的快捷键,一般为F2 4.进入B ...
- Ajax简单异步上传图片并回显
前台代码 上传图片按钮 <a href="javascript:void(0)" onclick="uploadPhoto()">选择图片</ ...
- Jquery.Data()和HTML标签的data-*属性
Jquery.Data()和HTML标签的data-*属性 一.总结 一句话总结: 在页面中用到要用标签存数据还是用HTML标签的data-*属性,这样 不会破坏html本身的结构 1.使用HTML标 ...
- LINUX 上 实现SNTP (时间同步)
Network Time Protocol (NTP) 也是RHCE新增的考试要求. 学习的时候也顺便复习了一下如何设置Linux的时间,现在拿出来和大家分享 设置NTP服务器不难但是NTP本身是一个 ...
- Event---事件详解
1.焦点事件 焦点:使浏览器能够区分用户输入的对象,当一个元素有焦点的时候,那么他就可以接收用户的输入. 可以通过以下方式给元素设置焦点: 点击.tab.js 不是所有元素都能够接收焦点的,能够响应用 ...
- fork() 成为负担,需要淘汰 spawn
A fork() in the road - Microsoft Research https://www.microsoft.com/en-us/research/publication/a-for ...
- jpa 总结
转:http://blog.csdn.net/linzhiqiang0316/article/details/52639265 先来介绍一下JPA中一些常用的查询操作: //And --- 等价于 S ...
- double,float,BigDecimal类型数值的操作
float四舍五入保留两位小数 /** * float四舍五入保留两位小数 * */ public static float formatDecimal(float n) { return (Math ...