Лесно можем да избием всички mysql заявки на определн потребител с елегантното:

select concat('KILL ',id,';') from information_schema.processlist where user='user123';

Заместваме user123 с желаният от нас потребител и изпълняваме в mysql и всичко е ОК 🙂

Na semana passada nós compramos Fantastico Deluxe instalador, que, na minha humilde opinião é um dos mais respeitáveis para servidores CPanel. Nós testamos instalamos e correu tudo bem. Hoje um cliente me informou sobre um problema com o enkodinga da instalação do wordpress. Olhei para cima e começar imediatamente o problema bases foram com o padrão de codificação em vez de Latin1 UTF8 como deveria. É ainda mais divertido, no phpmyadmin e ele diz que ele usa UTF8 como padrão, Drama. Eu decidi rever os arquivos de Fantastico, é para ver que se eu posso me encontrar em algum lugar onde as configurações para o padrão de bancos de dados, à primeira vista não vi nada. Eu vejo o que é o nariz começou a sangrar no meu. conf que não havia nenhum configurações apropriadas na configuração e tudo começar a que é definido por padrão. O servidor MySQL é hardkodnat usar UTF8, a menos que configurado com outras configurações e Fantastico-lo com Latin1 ( que é uma decisão muito estúpida). Решението както винаги е тривиално добавят се 2 реда в [mysqld] часста за да се окаже UTF8 като кодировка по подразбиране и всичко заспива 🙂

character-set-server=utf8
collation-server=utf8_general_ci

Нямам никаква идея поради каква причина съм пропуснал тези настройки при положение че си играх да правя няколкофининастройки на mysql-а.

Reforçada por Zemanta

Há poucos dias saiu XAMPP 1.8.0 Após a atualização de versão 1.7.7 Eu tive um problema bastante interessante. PhpMyAdmin-não minha abertura e izg″rmâvaše com 403

Acesso proibido!


Novo conceito de segurança do XAMPP:

Acesso ao objeto solicitado apenas está disponível a partir da rede local.

Esta definição pode ser configurada no arquivo. “httpd-xampp.conf”.

Agora eu abri o xampp httpd-conf que para mim... está localizado no / opt/lampp/etc/extra /, à primeira vista, parecia tudo bem. As regras para a rede local estavam bem. Para além de que eu iria abrir o localhost. WTF ??? Olhei o log e ver que meu acesso é cortado por konfiguaciâta. As coisas aqui já ahnaha-me e, francamente, tipo de um pouco de sorte eu encontrei o problema. След като преглеждах httpd. conf-а видях в Allow/Deny клаузите един последен ред Exigir que todos concedido. Ah a Eureka. Este é o novo mecanismo de controle que entrou em Apache 2.4. x. Dá acesso ou recusar tais tudo bem, Basicamente imitado a funcionalidade de permitir/negar :). За да поправим проблема добавяме exigem todas concedidas в директивите за папката /opt/lampp/phpmyadmin. Após as mudanças em mim fica assim

<Diretório “/opt / lampp / phpmyadmin”>
Limite AuthConfig AllowOverride
Permitir a ordem,negar
Permitir que todos
Exigir que todos concedido
</Diretório>

 

Você sempre pode tentar outro divoti, por exemplo, para renomear o pasta phpmyadmin algo diferente e não alias para. Mas é feio e não muito significativo 🙂

p. s pediu-me por que eu uso o XAMPP e não limpar a instalação de todos os componentes como é meu Debian nasceu – a resposta é muito simples – PREGUIÇA. Preguiça de escrever vários comandos então me buscar konfovete etc.. Muito fácil é tomar seu maço inteiro razarhiviraš e luz 😉

Reforçada por Zemanta

Image representing MySQL as depicted in CrunchBase

Преди известно време бях писал за Pesquisa de texto completo do MySQL 🙂 Днес имах много интересно преживяване с една заявка. В общи линии заявката търси за резултати който липсват друга таблица. Един основне Select и един sub select в WHERE частта на заявката. В общи линии скелета и е

SELECT DISTINCT (
`field`
)
FROM `table1`
WHERE `someID` =44
AND `firsTextField` NOT
IN (

SELECT DISTINCT (
`secondTextField`
)
FROM `table2`
WHERE `otherID` =44
)

В общи линии елементарна заявка. Написах я за 30 сек пускам я и зацикли машината. След дълго и търпеливо чакане от моя страна или по точно ~43 сек . Ми се изплю резултат lol . Пффф лудница. Влизам в машината гледам процесора е нормално натоварен почти в idle състояние. Шок и ужас. Пускам пак заявката пак същия резултат. Fuck WTF. Пускам explain на заявката и всичко лъснавторото поле secondTextField е само full text search без index, а там табличката е скромна от около 35к реда. Кой да четеfull text search не е индекс. Вече е ясен проблема набързо едно

ALTER TABLE `links` ADD INDEX ( `linkUrlID` ) 

И нещата си дойдоха на местата Query took 0.0005 sec 😀

Внимавайте как си слагате индексите от тях ви зависи маргинално скоростта на заявката.

p.s Като цяло аз съм си крив за горната ситуация не само защото липсва индекс ами защото не ползва full text search метода 😀

Reforçada por Zemanta

Ontem após a atualização da versão do mysql, meu servidor começou a gritar comigo, Tem uma bandeja, Isso não foi fechado corretamente e que necessitam de reparação, etc.. Blá, O que é esta mesa, Ainda temos cerca de 30 neste servidor. Uma opção é para ver o log-s o que diz sobre o assunto e para executar um reparo da tabela ou a outra opção – muito melhor – é executar um reparo, verificar e optimizar todas as tabelas. Para este efeito, vou usar a ferramenta mysqlcheck. Общо взето вариантите в случая са като и двете коменди са синонимни една на друга:

mysqlcheck -Aor -u root -p

mysqlcheck -u root -p --auto-repair --check --optimize --all-databases

Общо взето, която и от двете команди да използвате, ефектът ще е еднакъвароматична поправка, проверка и оптимизация на всички таблици. След като напишете която и да е от двете команди, ще бъдете попитани за root паролата на mysql server-a ви.