本实例是部署实验环境,采用的是Citrix的虚拟化环境,分配了3台RHEL6.4的主机。
1.准备3台主机
本实例是部署实验环境,采用的是Citrix的虚拟化环境,分配了3台RHEL6.4的主机。
Master 创建模板后,额外添加20G一块磁盘/dev/xvdb,额外添加2块网卡eth1,eth2
Standby 创建模板后,额外添加20G一块磁盘/dev/xvdb,额外添加2块网卡eth1,eth2
Segment01 创建模板后,额外添加50G一块磁盘/dev/xvdb,额外添加2块网卡eth1,eth2
网络规划
eth0(外部IP)eth1eth2
Master 192.168.9.123 172.16.10.101 172.16.11.101
Standby 192.168.9.124 172.16.10.102 172.16.11.102
Segment01 192.168.9.125(可选) 172.16.10.1 172.16.11.1
实验环境资源有限暂时配置3个节点,后续可能会根据需求添加Segment02,Segment03...
修改主机名
将Master,Standby,Segment01的三台主机名分别设置为mdw, smdw, sdw1
主机名修改方法:
hostname 主机名 vi /etc/sysconfig/network 修改hostnameOptions:配置脚本,前期为了方便同步节点间的配置,可选。
export NODE_LIST='MDW SMDW SDW1'
vi /etc/hosts 临时配置
192.168.9.123 mdw 192.168.9.124 smdw 192.168.9.125 sdw1配置第一个节点到自身和其他机器的无密码登录
ssh-keygen -t rsa ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.9.123 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.9.124 ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.9.125 cluster_run_all_nodes "hostname ; date"磁盘规划
gp建议使用xfs文件系统,所有节点需要安装依赖包
# rpm -ivh xfsprogs-3.1.1-10.el6.x86_64.rpm
所有节点建立/data文件夹,用来挂载xfs的文件系统
mkdir /data
mkfs.xfs /dev/xvdb
[root@smdb Packages], agsize=1310720 blks = , , imaxpct=25 = blks internal log , version=2 = blks, none , rtextents=0vi /etc/fstab 添加下面一行
/dev/xvdb /data xfs rw,noatime,inode64,allocsize=16m1 1 2.关闭iptables和selinux cluster_run_all_nodes "hostname; service iptables stop" cluster_run_all_nodes "hostname; chkconfig iptables off" cluster_run_all_nodes "hostname; chkconfig ip6tables off" cluster_run_all_nodes "hostname; chkconfig libvirtd off" cluster_run_all_nodes "hostname; setenforce 0" cluster_run_all_nodes "hostname; sestatus" vi /etc/selinux/config cluster_copy_all_nodes /etc/selinux/config /etc/selinux/注:所有节点都要统一设定,我这里先配置了信任,用脚本实现的同步,如果没有配置,是需要每台依次设定的。
3.设定建议的系统参数vi /etc/sysctl.conf
kernel.shmmax = 500000000 kernel.shmmni = 4096 kernel.shmall = 4000000000 kernelkernel.sysrq = 1 kernel.core_uses_pid = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 net.ipv4.tcp_syncookies = 1 net.ipv4.ip_forward = 0 net= 0 net.ipv4.tcp_tw_recycle = 1 net.ipv4.tcp_max_syn_backlog = 4096 net= 1 net= 1 net.core.netdev_max_backlog = 10000 vm.overcommit_memory = 2 kernel.msgmni = 2048 netvi /etc/security/limits.conf
* soft nofile 65536 * hard nofile 65536 * soft nproc 131072 * hard nproc 131072同步到各个节点:
cluster_copy_all_nodes /etc/sysctl.conf /etc/sysctl.conf cluster_copy_all_nodes /etc/security/limits.conf /etc/security/limits.conf磁盘预读参数及 deadline算法
在/etc/rc.d/rc.local 添加
blockdev --setra 16385 /dev/xvdb echo deadline > /sys/block/xvdb/queue/scheduler cluster_copy_all_nodes /etc/rc.d/rc.local /etc/rc.d/rc.local注:重启后 blockdev --getra /dev/xvdb 验证是否生效
验证所有节点的字符集
cluster_run_all_nodes "hostname; echo $LANG"重启所有节点,验证修改是否生效:
blockdev --getra /dev/xvdb more /sys/block/xvdb/queue/scheduler cluster_run_all_nodes "hostname; service iptables status" 4.在Master上安装 mkdir -p /data/soft 上传greenplum-db-4.3.4.2-build-1-RHEL5-x86_64.zip到Master unzip greenplum-db-4.3.4.2-build-1-RHEL5-x86_64.zip /bin/bash greenplum-db-4.3.4.2-build-1-RHEL5-x86_64.bin 5.在所有的节点上安装配置Greenplum配置/etc/hosts
192.168.9.123 mdw 172.16.10.101 mdw-1 172.16.11.101 mdw-2 192.168.9.124 smdw 172.16.10.102 smdw-1 172.16.11.102 smdw-2 192.168.9.125 sdw1 172.16.10.1 sdw1-1 172.16.11.1 sdw1-2同步/etc/hosts配置
cluster_copy_all_nodes /etc/hosts /etc/hosts配置gp需要的互信

MySQL uses a GPL license. 1) The GPL license allows the free use, modification and distribution of MySQL, but the modified distribution must comply with GPL. 2) Commercial licenses can avoid public modifications and are suitable for commercial applications that require confidentiality.

The situations when choosing InnoDB instead of MyISAM include: 1) transaction support, 2) high concurrency environment, 3) high data consistency; conversely, the situation when choosing MyISAM includes: 1) mainly read operations, 2) no transaction support is required. InnoDB is suitable for applications that require high data consistency and transaction processing, such as e-commerce platforms, while MyISAM is suitable for read-intensive and transaction-free applications such as blog systems.

In MySQL, the function of foreign keys is to establish the relationship between tables and ensure the consistency and integrity of the data. Foreign keys maintain the effectiveness of data through reference integrity checks and cascading operations. Pay attention to performance optimization and avoid common errors when using them.

There are four main index types in MySQL: B-Tree index, hash index, full-text index and spatial index. 1.B-Tree index is suitable for range query, sorting and grouping, and is suitable for creation on the name column of the employees table. 2. Hash index is suitable for equivalent queries and is suitable for creation on the id column of the hash_table table of the MEMORY storage engine. 3. Full text index is used for text search, suitable for creation on the content column of the articles table. 4. Spatial index is used for geospatial query, suitable for creation on geom columns of locations table.

TocreateanindexinMySQL,usetheCREATEINDEXstatement.1)Forasinglecolumn,use"CREATEINDEXidx_lastnameONemployees(lastname);"2)Foracompositeindex,use"CREATEINDEXidx_nameONemployees(lastname,firstname);"3)Forauniqueindex,use"CREATEU

The main difference between MySQL and SQLite is the design concept and usage scenarios: 1. MySQL is suitable for large applications and enterprise-level solutions, supporting high performance and high concurrency; 2. SQLite is suitable for mobile applications and desktop software, lightweight and easy to embed.

Indexes in MySQL are an ordered structure of one or more columns in a database table, used to speed up data retrieval. 1) Indexes improve query speed by reducing the amount of scanned data. 2) B-Tree index uses a balanced tree structure, which is suitable for range query and sorting. 3) Use CREATEINDEX statements to create indexes, such as CREATEINDEXidx_customer_idONorders(customer_id). 4) Composite indexes can optimize multi-column queries, such as CREATEINDEXidx_customer_orderONorders(customer_id,order_date). 5) Use EXPLAIN to analyze query plans and avoid

Using transactions in MySQL ensures data consistency. 1) Start the transaction through STARTTRANSACTION, and then execute SQL operations and submit it with COMMIT or ROLLBACK. 2) Use SAVEPOINT to set a save point to allow partial rollback. 3) Performance optimization suggestions include shortening transaction time, avoiding large-scale queries and using isolation levels reasonably.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

WebStorm Mac version
Useful JavaScript development tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version
SublimeText3 Linux latest version

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SublimeText3 Mac version
God-level code editing software (SublimeText3)
