Licznik letronikOVC. Instalacja mySQL 8.1 na Windows i tworzenie bazy dla sieci liczników.
(wersja robocza)
letronikOVC. Instalacja mySQL na Windows - wstęp. 1
Instrukcja instalacji serwera mySQL na Winsows. 2
Sprawdzenie czy jest zainstalowany mySQL 2
Pobieranie instalki mySQL dla Windows 5
Instalacja mySQL na Windows. 7
Błąd MySQL - brak pliku ssleay32.dll. The program can't start because SSLEAY32.DLL is missing from your computer. 11
Ponowne wejście do instalacji ikonfiguracji. 12
Konfiguracja serwera mySQL na Windows. 13
Dalej - wersja autentykacji - wybieramy wersję 5.7 16
Tworzenie na serwerze bazy dla licznika. 21
Sprawdzenie logowanie dla użytkownika test. 22
Testowanie bazy z licznikiem. 23
Sprawdzanie integralności sumy instalki. 24
Specyfikacja tabel w bazie danych 27
Windows 10. Edycja zmiennej path. 27
Liczniki letronkOVC do swojej pracy wymagają serwera mySQL i utworzonej w na nim bazy danych. Może to być jeden serwer dla całej sieci sklepów, ale musi mieć publiczny adres IP.
Druga ewentualność to serwer w sieci lokalne. Opisane tu oprogramowanie jest wystarczające do pracy licznika. Licznik gromadzi dane w bazie, a także posiada wbudowany serwer http z oprogramowaniem letronikVISITORS, który generuje raporty odwiedzalności. Można także zainstalować ten serwer na dowolnym komputerze z Windows/Linux. Jeżeli komputer jest widoczny w internecie (publiczny IP), raporty można sprawdzać zdalnie.
Licznik był testowany z serwerem w wersji 5.7 i serwerem 8.0 z ustawioną zgodnością wsteczną do 5.7
Sprawdzamy czy jest zainstalowany w systemie mySQL wpisująć w wyszukiwarkę systemową mysql
Jeżeli pojawi się mySQL X.X Command Line Client, to mySQL jest zainstalowane.
W takim przypadku musimy znać hasło root, które zostało podane przy instalacji. My zalecamy do pracy w sieci lokalnej Letronik65&. Jeżeli serwer widoczny jest w internecie, hasło musi być inne.
Jeżeli mySQL X.X Command Line Client się nie pojawi, musimy zainstalować mySQL.
mySQL wymaga:
pakiet redystrybucyjny Microsoft Visual C++ dla programu Visual Studio 2017.
Dodatek ten może być już zainstalowany na komputerze przy okazji instalacji innych aplikacji.
Jeżeli nie jesteśmy pewni, czy jest zainstalowany, możemy spróbować go zainstalować. Jeżeli będzie zainstalowany, otrzymamy odpowiedni komunikat.
Dodatek możemy znaleźć w google
Poniżej działający aktualnie link do dodatku:
https://go.microsoft.com/fwlink/?LinkId=746572
Udzielamy zgody na instalację i:
Jeżeli pojawi się okno Zmodyfikuj - dodatek jest zainstalowany i kliknij zamknij’
Jeżeli pojawi się okno z warunkami licencyjnymi, to trzeba zainstalować.
Link do wersji aktualnej
https://dev.mysql.com/downloads/installer/
Pojawi się strona:
Klikamy w odpowiednie download
Pojawi się strona:
Możemy się zalogować, zarejestrować lub pobrać bez konta. Pobierany plik.
Warto sprawdzić sumę kontrolną pliku. Przykładowy sposób opisany jest dodatku
Jeżeli ciągi sumy są identyczne, plik został pobrany prawidłowo i możemy go instalować.
Udzielamy zezwoleń:
Akceptujemy licencję:
Wybieramy rodzaj instalacji: Server only
Klikamy Next i otworzy się okno
Klikamy Execute i uruchamiamy instalację, która zakończy się jak niżej:
Klikamy Next i pojawi się okno:
Niestety w archiwum instalacyjnym aktualnie jest błąd. Brakuje niektórych istotnych plików.
C:\Program Files\MySQL\MySQL Server 8.0\bin\libeay32.dll
C:\Program Files\MySQL\MySQL Server 8.0\bin\ssleay32.dll
Błąd będzie zapewne wkrótce naprawiony, ale zalecam sprawdzić, czy te pliki są na swoim miejscu. Jeżeli są, można kontynuować instalację. Jeżeli ich nie ma, trzeba je zdobyć i wkopiować do właściwego katalogu. Jeżeli byśmy kontynuowali instalację bez tych plików, pojawiłby się błąd.
Rozwiązanie problemu znajdziemy pod adresem:
https://www.reddit.com/r/mysql/comments/8n9zrj/slleay32_dll_missing/
Cytuję:
Posted by
Trying to upgrade MySQL 5.7.22 to 8.0.11 and when going through the 8 installation it completes but then errors out on the Initializing Database step with "The program can't start because SSLEAY32.DLL is missing from your computer". Where can i grab that dll? I figure I need to throw it in the bin folder in the MySQL directory once I have it, correct me if im wrong. Thanks!
EDIT: I was using the offline MSI installer for this version of 8.0 and for some reason it was missing the SSLEAY32 and LIBEAY32 DLL files. I downloaded the zip file installation of 8.0 instead and found the files in the bin folder. Copied them over to the installation on the the server and the installation/configuration completed successfully.
W skrócie - trzeba pobrać mySQL w postaci archiwum zip, rozpakować znaleźć odpowiednie pliki i wkopiować tam gdzie trzeba.
Pliki z wersji 8.0.15 można też pobrać po postu tutaj.
Jeżeli chcemy pobrać ze źródeł oficjalnych:
Strona pobierania zip:
https://dev.mysql.com/downloads/mysql/
https://dev.mysql.com/downloads/file/?id=484900
Jeżeli udało nam się nie przerwać instalacji i konfiguracji to ją kontynuujemy, jeżeli przerwaliśmy, to uruchamiamy ponownie
W wyszukiwarce wpisujemy mysql
Klikamy MySQL Installer
Wyrażamy zgodę na uruchomienie
Otworzy się okno
Klikamy Reconfigure
Rozpocznie się konfiguracja:
Dalej:
Dalej:
Podaj hasło root. Nie możesz go zapomnieć. Zapisz sobie w bezpieczny sposób. Jeżeli serwer będzie widoczny tylko w sieci lokalnej, ostatecznie użyj hasła:
Letronik65&
Dla powyższego hasła Password strength Medium. Jeżeli będzie inna wartość, to hasło zostało wprowadzone z błędem (np: niewidoczna spacja) i później mogą być problemy.
Dalej:
Dalej.
Dalej
Uruchamiamy wiersz poleceń bazy.
Otworzy się okno:
Wpisujemy wcześniej wprowadzone hasło root, np: proponowane wyżej Letronik65& , i uruchomi się MySQL monitor:
Uwaga: komendy mySQL kończą się średnikiem. Jeżeli wciśniemy enter bez średnika, komenda się nie wykona. Możemy dopisać średnik w następnej linii i wcisnąć enter - komenda powinna zadziałać.
Wpiszmy ze średnikiem na końcu:
show databases;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
mysql>
Powyższy widok świadczy że baza działa prawidłowo.
Tworzymy bazę danych dla licznika - wybieramy nazwę, tutaj test - wpisujemy
create database test character set utf8mb4 collate utf8mb4_unicode_ci;
mysql> create database test character set utf8mb4 collate utf8mb4_unicode_ci;
Query OK, 1 row affected (0.20 sec)
mysql>
Tworzymy użytkownika o wybranej nazwie, tutaj test i ustalonym haśle wwwLetronikPl.
Wpisujemy:
CREATE USER 'test'@'%' IDENTIFIED BY 'wwwLetronikPl';
mysql> CREATE USER 'test'@'%' IDENTIFIED BY 'wwwLetronikPl';
Query OK, 0 rows affected (0.16 sec)
Nadajemy mu uprawnienia do bazy test
GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' ;
mysql> GRANT ALL PRIVILEGES ON test.* TO 'test'@'%';
Query OK, 0 rows affected (0.21 sec)
Wpisujemy
quit;
W celu ułatwienia korzystania z klienta mysql.exe należy do zmiennej środowiskowej Path dodać:
C:\Program Files\MySQL\MySQL Server 8.0\bin
Opis, jak to zrobic, znajduje się w dodatkach
Po ustawieniu zmiennej path wierszu polecenia wpisujemy:
mysql.exe -u test -p
enter.
Wpisujemy hasło wwwLetronikPl
enter
C:\Users\biuro>"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -u test -p
Enter password: *************
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.0.15 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Wpisujemy
show databases;
enter
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
2 rows in set (0.22 sec)
Jest nasza baza test.
wpisujemy:
quit;
enter
Komputer, na którym zainstalowana jest baza, musi mieć zapewniony stały adres w sieci, aby przypadkowo się nie zmienił, na przykład ustawiony ręcznie lub zafiksowany w routerze.
Jeżeli serwer ma adres publiczny, albo jest przekierowany na taki adres przez router, będzie widoczny w internecie i może obsługiwać liczniki w całej sieci sklepów.
Sprawdzamy adres serwera.
Otwieramy wiersz polecenia i wpisujemy
ipconfig↲
W pojawiającym się tekście odnajdujemy:
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::f124:20c0:e7f7:8d7%4
IPv4 Address. . . . . . . . . . . : 192.168.1.68
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
Cyfry po dwukropku są adresem IP
IPv4 Address. . . . . . . . . . . : 192.168.1.68
Mamy teraz wszyskie dane basy danych dla licznika letronikOVC
Nazwa hosta: 192.168.1.68
Nazwa bazy danych: test
Nazwa użytkownika: test
Hało: wwwLetronikPl
Jezeli mamy w sieci działający licznik to możemy skonfigurować licznik na tą bazę (instrukcja na stronie: https://letronik.pl/produkty/liczniki/lOVC/pic/lovcInstall.pdf)
I zresetować.
Po kilku minutach możemy sprawdzić MySQL command line client, czy w bazie pojawiły się odpowiednie tabele. Uruchamiamy MySQL command line client, wpisujemy hasło np Letronik65& i wybieramy bazę danych:
use test;
mysql> use test;
Database changed
mysql>
Następnie listujemy tablice:
show tables;
mysql> show tables;
+------------------+
| Tables_in_test |
+------------------+
| 16037339i_201902 |
| 16037339ifiles |
| 16037339iminutes |
+------------------+
3 rows in set (0.00 sec)
Są wszystkie 3 tablice licznika.
Możemy sprawdzić rekordy w wybranej tablicy wybranej z powyższej tabeli:
select * from 16037339iminutes;
mysql> select * from 16037339iminutes;
+--------------+----------+--------+--------+-------+
| recordTime | increase | errPho | errCom | state |
+--------------+----------+--------+--------+-------+
| 201902141154 | 0 | 1 | 0 | t |
| 201902141155 | 14 | 0 | 0 | t |
| 201902141156 | 17 | 0 | 0 | t |
| 201902141157 | 17 | 0 | 0 | t |
| 201902141158 | 17 | 0 | 0 | t |
| 201902141159 | 16 | 0 | 0 | t |
| 201902141200 | 17 | 0 | 0 | c |
+--------------+----------+--------+--------+-------+
7 rows in set (0.03 sec)
Baza gotowa i sprawna.
Możemy sprawdzić integralność pobranego pliku (nie jest to niezbędne, ale wskazane)
np: narzędziem
http://code.kliu.org/hashcheck/
Po zainstalowaniu tego narzędzia odszukujemy plik instalki mySQL i klikamy go prawym klawiszem.
Klikamy Utwórz plik sumy kontrolnej…
Powstanie plik mysql-installer-community-8.0.15.0.msi.md5 który zapisujemy i otwieramy notatnikiem.
Ze strony pobierania
https://dev.mysql.com/downloads/installer/
kopiujemy sumę MD5
I wklejamy do notatnika:
Porównujemy sumy kontrolne. Jeżeli są takie same, to pobrany plik instalki jest prawidłowy.
W wyszukiwarce wpisujemy: zmienne
Klikamy Edytuj zmienne środowiskowe systemu
W pojawiającym się oknie
Klikamy Zaawansowane i Zmienne środowiskowe
W następnym:
Klikamy Path i Edytuj
Klikamy Nowy, wpisujemy:
C:\Program Files\MySQL\MySQL Server 8.0\bin
i klikamy OK i w następnym oknie OK i następnym OK