Como usar SQL Profiler com SQL Server Express Edition para consultar o log do banco de dados

SQL Server Express é a versão free da família do Microsoft SQL Server, mas com algumas limitações. Além da limitação técnica do tamanho da base de dados a versão gratuita também não possui o SQL Profiler, que é o responsável em gerenciar os logs de transações e requisições no banco de dados.

Existe uma alternativa que funciona muito bem chamada DataWizard que substitui o SQL Profiler que pode ser baixada pelo link http://helmpcb.com/misc/SqlExpressProfiler-1.2.1708.7.zip

 

 

 

Solucionando Erro 429 ActiveX ao Enviar RE SEFIP CNS

Usuários de sistemas Windows 7/8 64 bits tem recebido o erro Arquivo inválido. Erro :429 – ActiveX component can’t create object ao tentar enviar arquivos pelo programa Conectividade Social da Caixa

1

 

A solução é bastante simples, basta copiar o arquivo cnsselo.dll da pasta c:\Arquivos de programas (x86)\caixa\sefip para a pasta c:\Arquivos de programas (x86)\caixa\cns
e executar o utilitário CNSComReg.exe para registrar a nova DLL

2

3 4

Trocando Placa Mãe do PC sem precisar Formatar (Reinstalar Windows)

As vezes quando trocamos a placa-mãe de um pc e o chipset ou processador são diferentes da placa-mãe original o windows retorna uma tela azul da morte com o código de erro 0x0000007b


Esse erro é se refere ao driver da controladora do HD que é diferente entre a placa original e a placa nova.

A solução pro problema é bem simples:

Usando o Hiren’s Boot CD entre no Mini Windows
Depois nas ferramentas abra o “Registry -> “Fix hard disk controller (fix_hdc.cmd)” que fica no system tray do sistema.

hiren-fixhdc-menu

Esse utilitário limpa o driver atual do sistema e instala o driver genérico de controladora de HD.

 

hiren-fixhdc-window

Aperte T para selecionar o caminho atual da instalação do Windows (c:\windows ou d:\windows).

Depois pressione M para atualizar o driver do controlador de HD

Pronto!

Só reiniciar e testar, comigo funcionou!

 

Fonte: https://www.raymond.cc/blog/move-windows-xp-hard-drive-or-change-motherboard-without-getting-blue-screen-of-death/2/

Restaurar um Backup no MySQL por linha de comando

Normalmente com Php + MySQL o comum é a utilização do phpmyadmin para restauração de dado com MySQL, o problema é que o phpmyadmin limita o tamanho do arquivo .sql que deverá ser importado. Nesse caso a restauração deve ser feita por linha de comando.

Na pasta de instalação do MySQL mais precisamente na pasta /bin existe o executável mysql.exe e podemos utilizá-lo para executar a restauração direto no prompt de comando

Linha de comando

mysql\bin\mysql.exe -u root -p minha_senha -h localhost nome_do_db < arquivo_backup.sql

O parâmetro -u especifica o nome do usuário registrado no mysql, -p especifica a senha, -h o ip ou nome do servidor, seguido pelo nome do banco e o arquivo a ser importado.

 

 

 

Um simples script para backup de Bases PostgreSQL usando linux

O script abaixo faz com que seja gerado um backup usando pg_dump de todas as bases de dados ativas no PostgreSQL, com opção de reciclagem dos backups a cada 30 dias, ou seja, o script mantem os 30 arquivos mais novos e elimina os mais antigos.

O Script precisa ser rodado com o usuário postgres, que geralmente é o usuário padrão na instalação do PostgreSQL.

Alterne para o usuario postgres
# su – postgres

Crie um arquivo .sh que será o script a ser executado
$vi backup_script.sh

Com o conteúdo baixo:

#!/bin/bash
# Location to place backups.
backup_dir="/home/postgres-backup/"
#String to append to the name of the backup files
backup_date=`date +%d-%m-%Y`
#Numbers of days you want to keep copie of your databases
number_of_days=30
databases=`/usr/local/pgsql/bin/psql -l -t | cut -d'|' -f1 | sed -e 's/ //g' -e '/^$/d'`
for i in $databases; do
  if [ "$i" != "template0" ] && [ "$i" != "template1" ]; then
    echo Dumping $i to $backup_dir$i\_$backup_date
    /urs/local/pgsql/bin/pg_dump -Fc $i > $backup_dir$i\_$backup_date
  fi
done
find $backup_dir -type f -prune -mtime +$number_of_days -exec rm -f {}

Lembre-se que o caminho para o psql e pg_dump pode mudar de acordo a distribuição e versão do PostgresSQL.

Dê a permissão de execução ao script
$chmod 700 backup_script.sh

Agora é só adicionar ao Cron para que ele possa ser agenda a execução do script.

Abrir o Cron do linux
$crontab -e

Adicionar a linha de execução do script
3 0 * * * /caminho/backup_script.sh

Um artigo bastante interessante sobre como usar o Cron do linux pode ser acessando em https://help.ubuntu.com/community/CronHowto#Crontab%20Example

 

 

 

Resolvendo o erro “warning mssql_connect() unable to connect to server” ao fazer uma conexão do PHP com MS SQL Server

Muitas gente sofre para fazer o php se conectar ao MS SQL Server, mesmo depois de adicionada a biblioteca no php.ini e  php_mssql.dll liberado no extension.

Mesmo assim a conexão parece impossível, quando são retornados erros como:

Call to undefined function mssql_connect()

warning mssql_connect() unable to connect to server

O problema ao conectar o PHP com o SQL Server ocorre geralmente nas versões mais novas do SQL Server, como a 2008 e 2008 R2

A causa do problema é uma dll desatualizada, dentro da pasta do Apache/php e no próprio Windows.

A solução é bastante simples, basta substituir a dll nas pastas:

windows/system32 

apache/bin

A dll pode ser baixada no link abaixo:

http://www.dlldll.com/ntwdblib.dll_download.html

Agora é só reiniciar o serviço do apache/php e testar!

Para copiar a dll para a pasta apache/bin o serviço deve está parado.

Um dica adicional é verificar se Named Pipes through está ativo no SQL server Configuration Manager

Um exemplo de conexão do php com SQL SERVER

$dbhandle = mssql_connect(‘nome_do_servidor\SQLEXPRESS’,’username’,’password’);

$db = mssql_select_db(‘databasename’, $dbhandle);

 

 

Mudar a senha padrão do usuário postgres no PostgresSQL

Para mudar a senha padrão, você primeiro precisa logar na base de dados com o usuário postgres

Algo do tipo, lembrando que a senha padrão é ‘postgres’ sem as aspas:

$ /opt/PostgreSQL/8.4/bin/psql -U postgres -d postgres

Password:
psql (8.4.9)
Type “help” for help.postgres=#

Agora é só mudar a senha do usuario postgres com o

postgres=# ALTER USER postgres WITH PASSWORD ‘newpasswordgoeshere’;
ALTER ROLE
postgres=#

Pronto! Senha alterada!

Listar todos os meses de um ano entre duas data em php

 

Um pequeno trecho de código que ajuda a listar todos os meses do ano entre duas data!

<?php
$startDate = strtotime("$startYear/$startMonth/01");
$endDate   = strtotime("$endYear/$endMonth/01");

$currentDate = $endDate;

while ($currentDate >= $startDate) {
    echo date('Y/m',$currentDate);
    $currentDate = strtotime( date('Y/m/01/',$currentDate).' -1 month');
}

fonte:http://stackoverflow.com/questions/1449167/list-of-all-months-and-year-between-two-dates-in-php

Somar valores em uma data específica com MySQL

GROUP especifica um método bastante simples de agrupar valores com MySQL e outros gerenciadores de banco de dados, no exemplo a seguir é demonstrado como somar os valores de várias linhas de uma tabela, em uma data específica:

SELECT SUM(total) as total, data FROM venda WHERE MONTH(data_venda) = 12 GROUP BY data

A query acima soma todos os valores de todas as linhas da coluna total quando o Mês for 12, usando a função MONTH() do MySQL, e agrupa pelas datas iguais.

As funções DAY() e YEAR() também podem ser usadas com o mesmo propósito.

Na necessidade de se saber o total em um respectivo mês, por exemplo, a query a seguir por ser uma boa solução:

SELECT SUM(total) as total FROM venda WHERE MONTH(data_venda) = 12

em um ano específico:

SELECT SUM(total) as total FROM venda WHERE YEAR(data_venda) = 2013

fonte: http://www.vbmania.com.br/pages/?varModulo=Forum&varMethod=abrir&varID=362818

 

Gerando logs com CodeIgniter php

Gerar log de erros é um fator essencial quando estamos desenvolvendo uma aplicação, além de ser bastante útil para o monitoramento quando a aplicação já está em produção. Com CodeIgniter o processo é bastante simples:

Ative a geração de log no config.php no item: Error Logging Threshold

$config[‘log_threshold’] = 4;

4 para ativar todos os tipos de mensagens

A pasta padrão onde o log será armazenado é system/logs/, no entanto essa pasta pode ser alterada na variável:

$config[‘log_path’] = ”;

Alguns logs são gerados automaticamente pelo sistema, mas isso não impede você de gerar logs próprios, como registrar o valor de uma variável sempre que ela aparecer, por exemplo. Abaixo alguns exemplos de tipo de log com seus respectivos níveis que podem ser gerados manualmente:

log_message(‘error’, ‘Mensagem para o log de erro.’);

log_message(‘debug’, ‘Mensagem para o log de debug’);

log_message(‘info’, ‘Mensagem para o log de informação.’);