Greenplum测试环境部署
本实例是部署实验环境,采用的是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需要的互信

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Le langage Go est un langage de programmation efficace, concis et facile à apprendre. Il est privilégié par les développeurs en raison de ses avantages en programmation simultanée et en programmation réseau. Dans le développement réel, les opérations de base de données font partie intégrante. Cet article explique comment utiliser le langage Go pour implémenter les opérations d'ajout, de suppression, de modification et de requête de base de données. Dans le langage Go, nous utilisons généralement des bibliothèques tierces pour faire fonctionner les bases de données, telles que les packages SQL couramment utilisés, gorm, etc. Ici, nous prenons le package SQL comme exemple pour présenter comment implémenter les opérations d'ajout, de suppression, de modification et de requête de la base de données. Supposons que nous utilisons une base de données MySQL.

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Le mappage polymorphe Hibernate peut mapper les classes héritées à la base de données et fournit les types de mappage suivants : join-subclass : crée une table séparée pour la sous-classe, incluant toutes les colonnes de la classe parent. table par classe : créez une table distincte pour les sous-classes, contenant uniquement des colonnes spécifiques aux sous-classes. union-subclass : similaire à join-subclass, mais la table de classe parent réunit toutes les colonnes de la sous-classe.

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

HTML ne peut pas lire directement la base de données, mais cela peut être réalisé via JavaScript et AJAX. Les étapes comprennent l'établissement d'une connexion à la base de données, l'envoi d'une requête, le traitement de la réponse et la mise à jour de la page. Cet article fournit un exemple pratique d'utilisation de JavaScript, AJAX et PHP pour lire les données d'une base de données MySQL, montrant comment afficher dynamiquement les résultats d'une requête dans une page HTML. Cet exemple utilise XMLHttpRequest pour établir une connexion à la base de données, envoyer une requête et traiter la réponse, remplissant ainsi les données dans les éléments de la page et réalisant la fonction de lecture HTML de la base de données.

Analyse des principes de base du système de gestion de base de données MySQL MySQL est un système de gestion de base de données relationnelle couramment utilisé qui utilise le langage de requête structuré (SQL) pour le stockage et la gestion des données. Cet article présentera les principes de base du système de gestion de base de données MySQL, y compris la création de bases de données, la conception de tables de données, l'ajout de données, la suppression, la modification et d'autres opérations, et fournira des exemples de code spécifiques. 1. Création d'une base de données Dans MySQL, vous devez d'abord créer une instance de base de données pour stocker les données. Le code suivant peut créer un fichier nommé "mon

PHP est un langage de programmation back-end largement utilisé dans le développement de sites Web. Il possède de puissantes fonctions d'exploitation de bases de données et est souvent utilisé pour interagir avec des bases de données telles que MySQL. Cependant, en raison de la complexité du codage des caractères chinois, des problèmes surviennent souvent lorsqu'il s'agit de caractères chinois tronqués dans la base de données. Cet article présentera les compétences et les pratiques de PHP dans la gestion des caractères chinois tronqués dans les bases de données, y compris les causes courantes des caractères tronqués, les solutions et des exemples de code spécifiques. Les raisons courantes pour lesquelles les caractères sont tronqués sont des paramètres de jeu de caractères incorrects dans la base de données : le jeu de caractères correct doit être sélectionné lors de la création de la base de données, comme utf8 ou u.

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.
