加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 海宁网 (https://www.hainingwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

server中如何安装mysql cluster

发布时间:2022-01-04 22:47:24 所属栏目:编程 来源:互联网
导读:这篇文章将为大家详细讲解有关server上如何安装mysql cluster,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 环境: 一台OS redhat linux 5.1 RAM 2G 硬盘空间:2G 先创建mysql组和mysql用户: groupadd mysql useradd
这篇文章将为大家详细讲解有关server上如何安装mysql cluster,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
环境:
 
一台OS
 
redhat linux 5.1
 
RAM 2G 硬盘空间:2G
 
先创建mysql组和mysql用户:
 
groupadd mysql
 
useradd -g mysql mysql
 
下载软件:http://www.mysql.com/downloads/cluster/
 
[@more@]
 
安装:
 
[user1@ws2 ~]$ tar xvf Downloads/mysql-cluster-gpl-7.1.3-linux-x86_64-glibc23.tar.gz
[user1@ws2 ~]$ ln -s mysql-cluster-gpl-7.1.3-linux-x86_64-glibc23 mysqlc
 
将~/mysqlc/bin放到你的path环境变量下.
 
 
配置:
 
[user1@ws2 ~]$ mkdir my_cluster my_cluster/ndb_data my_cluster/mysqld_data my_cluster/conf
 
在刚建的conf目录下,创建my.cnf和config.ini两个文件,文件的内容分别为:
 
my.cnf:
[mysqld]
ndbcluster
datadir=/home/user1/my_cluster/mysqld_data
basedir=/home/user1/mysqlc
port=5000
config.ini:
[ndb_mgmd]
hostname=localhost
datadir=/home/user1/my_cluster/ndb_data
id=1
[ndbd default]
noofreplicas=2
datadir=/home/user1/my_cluster/ndb_data
[ndbd]
hostname=localhost
id=3
[ndbd]
hostname=localhost
 
id=4
[mysqld]
id=50
 
 
初始化
 
[user1@ws2 ~]$ cd mysqlc
[user1@ws2 mysqlc]$ scripts/mysql_install_db --no-defaults --datadir=$HOME/my_cluster/mysqld_data/
 
 
启动:
 
[user1@ws2 mysqlc]$ cd ../my_cluster/
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/ndb_mgmd -f conf/config.ini --initial --
configdir=$HOME/my_cluster/conf/
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/ndbd -c localhost:1186
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/ndbd -c localhost:1186
 
通过mysql的manager查看各个节点和数据节点的情况:
 
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/ndb_mgm -e show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=3 @127.0.0.1 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master)
id=4 @127.0.0.1 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @127.0.0.1 (mysql-5.1.44 ndb-7.1.3)
[mysqld(API)] 1 node(s)
id=50 (not connected, accepting connect from any host)
 
 
启动mysql数据库:
 
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/mysqld --defaults-file=conf/my.cnf &
 
安全启动mysql数据库:
 
mysqld_safe --defaults-file=conf/my.cnf --ledir=/mysql/mysqlc/bin
 
测试 :
 
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/mysql -h 127.0.0.1 -P 5000 -u root
mysql> create database clusterdb;use clusterdb;
mysql> create table simples (id int not null primary key) engine=ndb;
mysql> insert into simples values (1),(2),(3),(4);
mysql> select * from simples;
+----+
| id |
+----+
| 3 |
| 1 |
| 2 |
| 4 |
+----+
 
 
安全关闭:
 
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/mysqladmin -u root -h 127.0.0.1 -P 5000 shutdown
[user1@ws2 my_cluster]$ $HOME/mysqlc/bin/ndb_mgm -e shutdown
 
问题记录:
 
在安装好后可能在其他IP断里不能访问MySQL,访问的时候会报:
 
[Warning] IP address '10.11.32.185' could not be resolved: getnameinfo() returned error (code: -3).
 
此时是因为MySQL对外部连接进行DNS解析,
 
在conf/my.cnf文件内加入:
 
[mysqld]
skip-name-resolve
 
#禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注
#意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接#请求!
#1:去掉mysql启动参数中的skip-name-resolve ,然后jdbc连接串用ip地址和主机名均可。
 
#2:如果保留启动参数skip-name-resolve 的话,在jdbc连接串中只能使用IP地址的方式连接数据库。
 
加入以上参数后,然后再将用户赋予权限:
 
grant all privileges on *.* to root@"%" identified by 'qinqiang' with grant option;
 
这样再次登录就OK了。

(编辑:财气旺网 - 海宁网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!