für einige (nicht ganz klar meine Gründe) Ich scheiterte postgresql Daemon im distributiven Upgrade eines meiner Debian-Server zu aktualisieren. Postgresql Dämon hat ein nettes Feature, mit der neuen Version nicht gestartet (im Gegensatz zu Mysql) während nicht überzeugen, Der neue ist voll kompatibel mit dem Start – sehr nützlich für große Datenbanken. Das Verfahren zur beschränkt auf die folgenden UPDATING 2 Spuren:

  • pg_dropcluster
  • pg_upgradecluster

Vor izdropite pg Cluster-Daemon muss gestoppt werden!

pg_dropcluster 9.4 main

Тази команда преминава бързо, след което преминаваме към съществената частсамият ъпгрейд

pg_upgradecluster 9.1 main
Disabling connections to the old cluster during upgrade...
Restarting old cluster with restricted connections...
Creating new cluster 9.4/main ...
config /etc/postgresql/9.4/main
data   /var/lib/postgresql/9.4/main
locale en_US.UTF-8
Flags of /var/lib/postgresql/9.4/main set as -------------e-C
port   5433
Disabling connections to the new cluster during upgrade...
Roles, databases, schemas, ACLs...
Fixing hardcoded library paths for stored procedures...
Upgrading database postgres...
Analyzing database postgres...
Fixing hardcoded library paths for stored procedures...
Upgrading database template1...
Analyzing database template1...
Fixing hardcoded library paths for stored procedures...
Upgrading database xpqt...
Analyzing database xpqt...
Re-enabling connections to the old cluster...
Re-enabling connections to the new cluster...
Copying old configuration files...
Copying old start.conf...
Copying old pg_ctl.conf...
Copying old server.crt...
Copying old server.key...
Stopping target cluster...
Stopping old cluster...
Disabling automatic startup of old cluster...
Configuring old cluster to use a different port (5433)...
Starting target cluster on the original port...
Success. Please check that the upgraded cluster works. If it does,
you can remove the old cluster with

pg_dropcluster 9.1 main

Ако всичко е минло гладко трябва да получите съобщение като горното което ви подканва да разкарате старите данни от pg.

pg_dropcluster 9.1 main

В края на тая тарпана вече можете да стартирате процеса си отново. При мен базите са малки и за съжаление не мога да дам оценка за колко време преминава същественият ъпгрейд.

Seit letzter Woche gekauft Fantastico Deluxe-Installer, die in meiner bescheidenen Meinung nach ist eine der Ordnung für CPanel Server. Wir installiert es und getestet alles verlief reibungslos. Heute, ein Kunde erzählte mir von einem Problem mit der Codierung von Wordpress-Installation. Durch das Zeug und sofort leuchteten Problem Basen waren Latin1 Standard UTF8 anstelle der Annahme,. Noch mehr Spaß, dass phpMyAdmin-geschrieben und wird standardmäßig verwendet UTF8, Drama. Ich beschloss, die Dateien von Fantastico-es zu überprüfen, um zu sehen, ob es irgendwo ist, wo ich mich Datenbank von Standardeinstellungen finden zunächst nichts gesehen. etwas Tekna mich dann zu sehen, was in ist my.conf-und was es zu sehen gab keine entsprechenden Einstellungen in der Konfiguration und alle Lichter auf, was als Standard eingestellt ist. Mysql Server hardkodnat UTF8 verwenden, wenn es mit anderen Einstellungen und konfiguriert ist Fantastico-es ist offensichtlich Latein1 ( was ziemlich dumme Entscheidung). Решението както винаги е тривиално добавят се 2 реда в [mysqld] часста за да се окаже UTF8 като кодировка по подразбиране и всичко заспива 🙂

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

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

zemanta ausgebaut.

Image representing MySQL as depicted in CrunchBase

Vor einiger Zeit schrieb ich über MySQL Volltextsuche 🙂 Heute hatte ich eine sehr interessante Erfahrung, mit einer Anfrage. In der Regel, was die Anwendung sucht nach Ergebnissen fehlt eine andere Tabelle. Wählen Sie eine Haupt- und eine Unter auswählen, die in der WHERE-Teil der Anwendung. Im allgemeinen Skelett und

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

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

Im Allgemeinen elementare Anforderung. Ich schrieb es für 30 sec führen Sie es und steckte Maschine. Nach einem langen und geduldig auf meinen Teil warten oder einfach nur ~ 43 sec . Es spuckte Ergebnis lol . pfff Irrenhaus. Anmeldung Maschine Blick Prozessor ist in der Regel damit beschäftigt fast Ruhezustand. Schock und Horror. Führen Sie erneut anfordern wieder das gleiche Ergebnis. Bumsen WTF. Führen Sie die Anwendung und erklären alles leuchteten – zweite Feld secondTextField nur Volltextsuche без Index, und es gibt eine bescheidene Tablett von etwa 35K Reihen. Wer lesen – Volltextsuche не е индекс. Schon klar Problem schnell ein

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

Und die Dinge fiel in Platz Abfrage in 0.0005 sec 😀

Seien Sie vorsichtig, wie Sie Indizes von ihnen setzen, hängt von Ihrer Grenzrate Anfrage.

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

zemanta ausgebaut.

Gestern nach der Version von MySQL aktualisieren, server gesehen mir fing an mir zu kreischen, , dass es eine Tabelle,, das war nicht sauber geschlossen und muss repariert werden, usw.. bla, Was wird diese Tabelle, Noch habe ich meine 30 etwas auf diesem Server. Eine Möglichkeit ist, im Protokoll-s zu sehen, was sagt es über die Frage und führen die Reparatur der Tabelle oder die andere Option – der bei weitem bessere – Es ist die Reparatur laufen, Überprüfung und Optimierung aller Tabellen. Dies wird verwenden mysqlcheck Werkzeug. Общо взето вариантите в случая са като и двете коменди са синонимни една на друга:

mysqlcheck -Aor -u root -p

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

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