Júlio , de modo algum quiz lhe criticar mesmo porque admiro muito o que você faz. Apenas não concordo quando vocês partem do pressuposto de que todos entendem as regras e as burlam de maneira proposital. Como Professsor que fui durante 7 anos , aprendi que não é assim. Nem todos "não aprendem" por que não querem. Alguns não entendem REALMENTE algumas coisas e se não dermos novas chances a essas pessoas para que participem como devem da sociedade estaremos cometendo injustiças com ela. Não tive intuito mesmo de criticar mas a forma como o Tiago conduziu uma polêmica me chamou a atenção e não pude deixar de mostrar o meu apreço por tal atitude. Foi apenas essa a minha intenção. Um abraço
Miranda On Tue, 2007-01-02 at 11:00 -0200, Julio C. Neves wrote: > Pois é Miranda, entendi o seu recado. Vc se esqueceu somente que o > Tiago é > moderador há somente um mês. Quero ver qtas vezes ele irá repetir a > mesma > ladainha antes de sair detonando as pessoas que *insistem* em > permanecer no > OT. > > Por outro lado, quero deixar bastante claro que: se por acaso eu não > estivesse de férias qdo rolou este OT na lista, estariam todos > detonados. > > Miranda, acho que não nos conhecemos, mas os principais personagens do > SL de > MG são meus amigos (Bruxo, Meira, Mussy, Global, ...) e todos poderão > atestar que tb sou fino no trato, porém paciência tem limite, > inclusive para > ficar aqui justificando o que não necessita justificativa, pois está > na > regra do jogo. > > As regras de uma sociedade foram feitas para serem seguidas pelos > sócios, > aqueles que não concordam com as referidas regras não entram para essa > sociedade ou dela são banidos. Colocando isso de forma mais ampla, > nesse > momento estou precisando de dinheiro. Ora, o banco está cheio de > dinheiro, > mas nem penso em pegá-lo, pois caso o faça, serei banido da sociedade, > indo > para a cadeia. > > Uma última sugestão, se vc acha que eu e o Eriberto somos pouco > polidos no > trato com o pessoal da lista, porque vc não abre outra mais > complacente e > condescendente? Vou te responder: pq não funciona! Se temos uma lista > sobre > shell, não podemos nos perder em MySQL, pois o que nos une é o > interesse > pelo Shell. Eu, por exemplo, não tenho o menor interesse pelo MySQL pq > nunca > o usei nem pretendo fazê-lo, mas existe uma lista específica sobre > isso > (moderada pelo Helvécio, que tb é daí de MG e para mim é quem mais > entende > de MySQL no Brasil) que só fala em Shell, se for necessário usá-lo > para > resolver um problema com MySQL. > > Aí sim Miranda, eu acho que poderia usar a sua frase (fazendo as > correções): > "O mundo seria bem melhor se mais gente fosse tão sensata na abordagem > das > "diferenças"". Pois estas sim, são as verdadeiras diferenças. São tão > diferentes que estão até escritas em regras. > > Alô lista, peço a vcs desculpas por este desabafo, mas creio que já > conversei pessoalmente com pelo menos metade dos quase 3000 associados > da > nossa lista pelos eventos de SL por este Brasil a fora, e muitos de > vcs > devem saber que eu e o Eriberto passamos os fins de semana separados > das > famílias, dando minicursos e fazendo palestras gratuitamente para > divulgar o > SL, nos dedicando de corpo e alma à causa. Garanto que se as pessoas > que > vivem se queixando de tudo, se usassem o tempo gasto inutilmente nas > reclamaçãoes para ajudar e divulgar o SL, estaríamos muito à frente do > atualmente somos. > > Abraços a todos e feliz 2007, > Julio > :wq > > 2007/1/2, Miranda <[EMAIL PROTECTED]>: > > > > Gostaria de parabenizar publicamente a fineza com que > > o Thiago levou a questão do off-topic . > > O mundo seria bem melhor se mais gente fosse tão sensato > > quanto o colega na abordagem das "diferenças" > > > > On Thu, 2006-12-28 at 14:20 -0200, Tiago Barcellos Peczenyj wrote: > > > Por favor, > > > > > > TODOS os interessados em ajudar o Sr Fernando nas suas atividades > de > > > banco de dados e que saiam do escopo da lista o façam em PVT para > ele > > > atraves do email: [EMAIL PROTECTED] > > > > > > Imagino que muitos da lista de shell script (incluindo eu) terão o > > > prazer de ajudar no uso das ferramentas mágicas do universo NIX > quando > > > a questão rumar para "usar shell script". Se for imprescindível > usar > > > uma ferramenta não usual de forma integrada com alguma fagulha de > > > shell script, que seja informado um link externo como o > sourceforge, a > > > pagina do criador da ferramenta ou, em ultimo caso, o codigo fonte > no > > > pastebin (que possui syntax highlight!!) -- http://pastebin.com/ > > > > > > Lembrando que no rodapé da lista é possivel ler: > > > > > > Esta lista não admite a abordagem de outras liguagens de > programação, > > > como perl, C etc. Quem insistir em não seguir esta regra será > moderado > > > sem prévio aviso. > > > > > > Quem não concordar entre em contato em PVT, boas entradas de ano > novo > > > à todos. > > > > > > On 12/28/06, [EMAIL PROTECTED] > > > <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > olá Fernando, > > > > > > > > Realmente você está fora do escopo da lista, mas vamos lá, O que > eu > > > > percebi é que você não pode apagar a tabela, então nem o rsync > nem o > > > > mysqldump. A solução do Remulo é a mais indicada, porem pelo que > > > você > > > > falou nenhuma das aplicações é slave ou master, e sim dois > bancos > > > > redundantes. Uma saída que utilizo é o datapipe, que você roda > em um > > > dos > > > > lados com a porta do mysql, assim quando acessar o banco(fará > isso > > > > normalmente, como se fosse local) os dados serão processados no > > > servidor > > > > que está apontando. estou enviando o source do datapipe, só de o > > > comando > > > > > > > > gcc -o datapipe pipefakeps.c > > > > > > > > Atenciosamente, > > > > > > > > Rangel Perez Sardinha > > > > <[EMAIL PROTECTED]> > > > > > > > > ===================================== > > > > Pragya Technologies Brazil > > > > > > > > Rua Alagoas, 135 > > > > Ribeirao Preto - SP - Brasil > > > > Mobile: +55 16 9137 8609 > > > > Office: +55 16 3904 9657 > > > > ===================================== > > > > > > > > -----Corte aqui <pipefakeps.c>----------------- > > > > /* > > > > > > > > The following is an interesting snippet of code I wrote > recently. It > > > > makes a data pipe between a listen port on the machine it's > being > > > run on > > > > and a port on a remote machine. For example, running > > > > datapipe 2222 23 your.machine.com > > > > > > > > would create a port 2222 on the local machine that, if telnetted > to, > > > > would > > > > be the same as telnetting to port 23 on your.machine.com. This > can > > > be > > > > used > > > > for a variety of purposes: redirect IRC connections so that > identd > > > shows > > > > the username of the datapipe process; redirect sendmail direct > > > > connections > > > > for the same reason; even use on a firewall machine to give > access > > > to an > > > > internal service (ftpd, for instance). Cascaded datapipes make > for > > > > interesting traceback dilemmas. Questions and comments accepted. > > > > > > > > Compile with: > > > > cc -o datapipe -O datapipe.c > > > > On boxes without strerror() (like SunOS 4.x), compile with: > > > > cc -o datapipe -O -DSTRERROR datapipe.c > > > > > > > > Run as: > > > > datapipe localport remoteport remotehost [fakeps (tested on > Linux)] > > > > > > > > It will fork itself into the background. > > > > > > > > /* > > > > * Datapipe - Create a listen socket to pipe connections to > another > > > > * machine/port. 'localport' accepts connections on the machine > > > running > > > > * datapipe, which will connect to 'remoteport' on 'remotehost'. > > > Fairly > > > > * standard 500 xxxx extended errors are used if something > drastic > > > > * happens. > > > > * > > > > * (c) 1995 Todd Vierling > > > > * fakeps no(c) 1998 fusys > > > > * > > > > * Define STRERROR while compiling on a SunOS 4.x box > > > > */ > > > > > > > > #include <sys/types.h> > > > > #include <sys/socket.h> > > > > #include <sys/wait.h> > > > > #include <netinet/in.h> > > > > #include <stdio.h> > > > > #include <stdlib.h> > > > > #include <errno.h> > > > > #include <unistd.h> > > > > #include <netdb.h> > > > > #include <time.h> > > > > > > > > #ifdef STRERROR > > > > extern char *sys_errlist[]; > > > > extern int sys_nerr; > > > > char *undef = "Undefined error"; > > > > > > > > char *strerror(error) > > > > int error; > > > > { > > > > if (error > sys_nerr) > > > > return undef; > > > > return sys_errlist[error]; > > > > } > > > > #endif > > > > #define CIAO_PS "bfi_2" > > > > > > > > main(argc, argv) > > > > int argc; > > > > char **argv; > > > > { > > > > int lsock, csock, osock; > > > > FILE *cfile; > > > > char buf[4096]; > > > > struct sockaddr_in laddr, caddr, oaddr; > > > > int caddrlen = sizeof(caddr); > > > > fd_set fdsr, fdse; > > > > struct hostent *h; > > > > struct servent *s; > > > > int nbyt; > > > > unsigned long a; > > > > unsigned short oport; > > > > int i, j, argvlen; > > > > char *bfiargv[argc+1]; > > > > char *fintops = CIAO_PS ; > > > > > > > > if (argc < 4) { > > > > fprintf(stderr,"Usage: %s localport remoteport remotehost > > > > fakeps\n",argv[0]); > > > > return 30; > > > > } > > > > > > > > for(i=0; i < argc; i++) { > > > > bfiargv[i] = malloc(strlen(argv[i]) + 1); > > > > strncpy(bfiargv[i], argv[i], strlen(argv[i]) + 1); > > > > } > > > > bfiargv[argc] = NULL; > > > > argvlen = strlen(argv[0]); > > > > if (argvlen < strlen(CIAO_PS)) { > > > > printf("Se vuoi fregare davvero ps vedi di lanciarmi almeno come > > > > superFunkyDataPipe !\n") ; > > > > abort(); > > > > } > > > > if(bfiargv[4]) fintops=bfiargv[4] ; > > > > strncpy(argv[0], fintops, strlen(fintops)); > > > > for(i = strlen(fintops); i < argvlen; i++) argv[0][i] = '\0'; > > > > for(i=1; i < argc; i++) { > > > > argvlen = strlen(argv[i]); > > > > for(j=0; j <= argvlen; j++) > > > > argv[i][j] = '\0'; > > > > } > > > > > > > > a = inet_addr(argv[3]); > > > > if (!(h = gethostbyname(bfiargv[3])) && > > > > !(h = gethostbyaddr(&a, 4, AF_INET))) { > > > > perror(bfiargv[3]); > > > > return 25; > > > > } > > > > oport = atol(bfiargv[2]); > > > > laddr.sin_port = htons((unsigned short)(atol(bfiargv[1]))); > > > > if ((lsock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) == -1) { > > > > perror("socket"); > > > > return 20; > > > > } > > > > laddr.sin_family = htons(AF_INET); > > > > laddr.sin_addr.s_addr = htonl(0); > > > > if (bind(lsock, &laddr, sizeof(laddr))) { > > > > perror("bind"); > > > > return 20; > > > > } > > > > if (listen(lsock, 1)) { > > > > perror("listen"); > > > > return 20; > > > > } > > > > if ((nbyt = fork()) == -1) { > > > > perror("fork"); > > > > return 20; > > > > } > > > > if (nbyt > 0) > > > > return 0; > > > > setsid(); > > > > while ((csock = accept(lsock, &caddr, &caddrlen)) != -1) { > > > > cfile = fdopen(csock,"r+"); > > > > if ((nbyt = fork()) == -1) { > > > > fprintf(cfile, "500 fork: %s\n", strerror(errno)); > > > > shutdown(csock,2); > > > > fclose(cfile); > > > > continue; > > > > } > > > > if (nbyt == 0) > > > > goto gotsock; > > > > fclose(cfile); > > > > while (waitpid(-1, NULL, WNOHANG) > 0); > > > > } > > > > return 20; > > > > > > > > gotsock: > > > > if ((osock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) == -1) { > > > > fprintf(cfile, "500 socket: %s\n", strerror(errno)); > > > > goto quit1; > > > > } > > > > oaddr.sin_family = h->h_addrtype; > > > > oaddr.sin_port = htons(oport); > > > > memcpy(&oaddr.sin_addr, h->h_addr, h->h_length); > > > > if (connect(osock, &oaddr, sizeof(oaddr))) { > > > > fprintf(cfile, "500 connect: %s\n", strerror(errno)); > > > > goto quit1; > > > > } > > > > while (1) { > > > > FD_ZERO(&fdsr); > > > > FD_ZERO(&fdse); > > > > FD_SET(csock,&fdsr); > > > > FD_SET(csock,&fdse); > > > > FD_SET(osock,&fdsr); > > > > FD_SET(osock,&fdse); > > > > if (select(20, &fdsr, NULL, &fdse, NULL) == -1) { > > > > fprintf(cfile, "500 select: %s\n", strerror(errno)); > > > > goto quit2; > > > > } > > > > if (FD_ISSET(csock,&fdsr) || FD_ISSET(csock,&fdse)) { > > > > if ((nbyt = read(csock,buf,4096)) <= 0) > > > > goto quit2; > > > > if ((write(osock,buf,nbyt)) <= 0) > > > > goto quit2; > > > > } else if (FD_ISSET(osock,&fdsr) || FD_ISSET(osock,&fdse)) { > > > > if ((nbyt = read(osock,buf,4096)) <= 0) > > > > goto quit2; > > > > if ((write(csock,buf,nbyt)) <= 0) > > > > goto quit2; > > > > } > > > > } > > > > > > > > quit2: > > > > shutdown(osock,2); > > > > close(osock); > > > > quit1: > > > > fflush(cfile); > > > > shutdown(csock,2); > > > > quit0: > > > > fclose(cfile); > > > > return 0; > > > > } > > > > > > > > -----------corte aqui----------------------------- > > > > > > > > > > > > > > > > -----Mensagem original----- > > > > De: [email protected] > > > > [mailto:[EMAIL PROTECTED] Em nome de Remulo > > > > Enviada em: quarta-feira, 27 de dezembro de 2006 15:47 > > > > Para: [email protected] > > > > Assunto: Re: [shell-script] replicação > > > > > > > > Prezado Amigo, > > > > > > > > estou respondendo, mesmo sabendo que isso está fora do escopo do > > > shell, > > > > pois > > > > o que vc quer é que seus bancos estejam com a mesma informação. > > > > > > > > o que vc quer, o proprio mysql irá fazer pra vc, e nao o shell. > vc > > > terá > > > > que > > > > dizer que um banco é o master, e o outro é slave, portamto nada > a > > > ver > > > > com > > > > shell. > > > > > > > > procupe em uma lista de banco de dados sobre replicação que vc > > > resolverá > > > > seu > > > > problema logo. > > > > > > > > atenciosamente, > > > > > > > > Em 27/12/06, Fernando Simon <[EMAIL PROTECTED] > > > > <mailto:fsimonbr%40yahoo.com.br> com.br> escreveu: > > > > > > > > > > Pois eh, tenho um problema ai, não posso dropar e recriar as > > > tabelas, > > > > > tendo em vista que as duas base estão sendo usadas, digo tem > uma > > > > aplicação > > > > > desktop que usa uma base a outra uma aplicação web, quando é > > > > modificado o > > > > > registro de uma, deve modificar o mesmo, somente o mesmo, > registro > > > na > > > > outra > > > > > base. :-/ > > > > > > > > > > Fernando > > > > > > > > > > ----- Mensagem original ---- > > > > > De: Reinaldo Carvalho <[EMAIL PROTECTED] <mailto:reinaldoc% > > > 40gmail.com> > > > > com <reinaldoc%40gmail.com>> > > > > > Para: shell-script@ <mailto:shell-script%40yahoogrupos.com.br> > > > > > > > > yahoogrupos.com.br <shell-script%40yahoogrupos.com.br> > > > > > Enviadas: Terça-feira, 26 de Dezembro de 2006 21:14:52 > > > > > Assunto: Re: [shell-script] replicação > > > > > > > > > > rsync não é o mais aconselhado, visto que necessita parar o > banco. > > > > > > > > > > Use o mysqldump... > > > > > > > > > > no servidor: > > > > > mysqldump -u root -p DB tabela > tabela.sql > > > > > > > > > > para replicar: > > > > > mysql -u root -p DB < tabela.sql > > > > > > > > > > Veja, que a tabela do segundo será removida, e então recriada > > > igual ao > > > > > primeiro. > > > > > > > > > > -- > > > > > Reinaldo Carvalho > > > > > > > > > > On 12/26/06, Fernando Simon <[EMAIL PROTECTED] com.br> wrote: > > > > > > Olá pessoal, Feliz Natal e um próspero Ano Novo! > > > > > > > > > > > > Pessoal, estou precisando de uma forcinha, preciso criar um > > > script > > > > que > > > > > atualize um banco de dados de acordo com o outro, se possível, > > > > atualize > > > > > somente algumas tabelas, teria como fazer isso via > shellscript? > > > > > > Os dois banco de dados são mysql. > > > > > > > > > > > > Se alguém tiver outra idéia de como fazer isso, fico grato > pelas > > > > > colaborações. > > > > > > > > > > > > Muito Obrigado! > > > > > > > > > > > > Abraços, > > > > > > Fernando > > > > > > > > > > > > ____________ _________ _________ _________ _________ __ > > > > > > Fale com seus amigos de graça com o novo Yahoo! Messenger > > > > > > http://br.messenger .yahoo.com/ > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram > > > removidas] > > > > > > > > > > > > > > > > > > > > > > > > ------------ --------- --------- --------- --------- > --------- - > > > > > > Esta lista não admite a abordagem de outras liguagens de > > > > programação, > > > > > como perl, C etc. Quem insistir em não seguir esta regra será > > > moderado > > > > sem > > > > > prévio aviso. > > > > > > ------------ --------- --------- --------- --------- > --------- - > > > > > > Sair da lista: shell-script- unsubscribe@ yahoogrupos. > com.br > > > > > > ------------ --------- --------- --------- --------- > --------- - > > > > > > Esta lista é moderada de acordo com o previsto em > > > http://www.listas- > > > > <http://www.listas-discussao.> discussao. > > > > > cjb.net > > > > > > ------------ --------- --------- --------- --------- > --------- - > > > > > > Servidor Newsgroup da lista: news.gmane.org > > > > > > Grupo: gmane.org.user- groups.programmi ng.shell. brazil > > > > > > > > > > > > > > > > > > Links do Yahoo! Grupos > > > > > > > > > > > > > > > > > > > > > > > > > > > > __________________________________________________ > > > > > Fale com seus amigos de graça com o novo Yahoo! Messenger > > > > > http://br.messenger > <http://br.messenger.yahoo.com/> .yahoo.com/ > > > > > > > > > > [As partes desta mensagem que não continham texto foram > removidas] > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram > removidas] > > > > > > > > [As partes desta mensagem que não continham texto foram > removidas] > > > > > > > > > > > > > > > > > > > > > > -- > > > Tiago B Peczenyj > > > Linux User #405772 > > > > > > # cd /pub > > > # more beer > > > > > > > > > > > > > > -- > > Miranda <[EMAIL PROTECTED]> > > > > > > > > ---------------------------------------------------------- > > Esta lista não admite a abordagem de outras liguagens de > programação, como > > perl, C etc. Quem insistir em não seguir esta regra será moderado > sem prévio > > aviso. > > ---------------------------------------------------------- > > Sair da lista: [EMAIL PROTECTED] > > ---------------------------------------------------------- > > Esta lista é moderada de acordo com o previsto em > > http://www.listas-discussao.cjb.net > > ---------------------------------------------------------- > > Servidor Newsgroup da lista: news.gmane.org > > Grupo: gmane.org.user-groups.programming.shell.brazil > > > > > > Links do Yahoo! Grupos > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > -- Miranda <[EMAIL PROTECTED]> --------------------------------------------------------------------- Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. --------------------------------------------------------------------- Sair da lista: [EMAIL PROTECTED] --------------------------------------------------------------------- Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net --------------------------------------------------------------------- Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
