{"id":1074,"date":"2022-01-19T15:26:24","date_gmt":"2022-01-19T12:26:24","guid":{"rendered":"https:\/\/presta.site\/blog\/jak-zmienic-ustawienia-polaczenia-z-baza-danych-w-prestashop\/"},"modified":"2026-07-25T22:05:41","modified_gmt":"2026-07-25T19:05:41","slug":"jak-zmienic-ustawienia-polaczenia-z-baza-danych-w-prestashop","status":"publish","type":"post","link":"https:\/\/presta.site\/blog\/pl\/jak-zmienic-ustawienia-polaczenia-z-baza-danych-w-prestashop\/","title":{"rendered":"Po\u0142\u0105czenie baza danych prestashop: zmie\u0144 bezpiecznie"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Po przeniesieniu na inny hosting lub zmianie danych logowania PrestaShop nadal odczytuje ustawienia MySQL z pliku konfiguracyjnego &#8211; nie z Back Office. Gdy host, nazwa bazy, u\u017cytkownik lub has\u0142o nie odpowiadaj\u0105 serwerowi, sklep i panel administracyjny przestaj\u0105 si\u0119 \u0142adowa\u0107. Ten przewodnik pokazuje, jak bezpiecznie zmieni\u0107 <strong>po\u0142\u0105czenie baza danych prestashop<\/strong>, wyczy\u015bci\u0107 cache, kt\u00f3ry mo\u017ce trzyma\u0107 stare warto\u015bci, i sprawdzi\u0107 typowe komunikaty b\u0142\u0119d\u00f3w.<\/p>\n\n\n<!--more-->\n\n\n<p class=\"wp-block-paragraph\">Od PrestaShop 1.7 (w tym wersji 8 i 9) ustawienia po\u0142\u0105czenia z baz\u0105 danych znajduj\u0105 si\u0119 w <code class=\"codecolorer text default\"><span class=\"text\">app\/config\/parameters.php<\/span><\/code>. Starsze sklepy 1.5 &#8211; 1.6 korzystaj\u0105 z <code class=\"codecolorer text default\"><span class=\"text\">config\/settings.inc.php<\/span><\/code>. Oficjalne informacje o tym pliku s\u0105 w <a href=\"https:\/\/devdocs.prestashop-project.org\/9\/development\/configuration\/configuring-prestashop\/\" target=\"_blank\" rel=\"noopener noreferrer external\" data-wpel-link=\"external\">dokumentacji deweloperskiej PrestaShop 9 (parameters.php)<\/a>. B\u0142\u0119dne warto\u015bci wy\u0142\u0105czaj\u0105 sklep z sieci, wi\u0119c przed edycj\u0105 warto wykona\u0107 <a href=\"https:\/\/presta.site\/blog\/pl\/jak-utworzyc-kopie-zapasowa-w-prestashop\/\" data-wpel-link=\"internal\">pe\u0142n\u0105 kopi\u0119 zapasow\u0105 PrestaShop<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kiedy trzeba zmieni\u0107 po\u0142\u0105czenie baza danych prestashop<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Te ustawienia zwykle edytuje si\u0119, gdy:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sklep zosta\u0142 przeniesiony na nowy hosting lub VPS i dostawca poda\u0142 nowy host, nazw\u0119 bazy, u\u017cytkownika lub has\u0142o.<\/li>\n<li>W panelu zmieniono nazw\u0119 bazy lub zaktualizowano has\u0142o MySQL.<\/li>\n<li>Pliki zosta\u0142y przywr\u00f3cone na serwer, kt\u00f3ry ma inn\u0105 baz\u0119 danych.<\/li>\n<li>Front lub Back Office po przeniesieniu pokazuje b\u0142\u0105d po\u0142\u0105czenia z baz\u0105 lub \u201eaccess denied\u201d.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ten plik <em>nie<\/em> s\u0142u\u017cy do zmiany nazw produkt\u00f3w, adresu e-mail sklepu ani naprawy przyjaznych URL SEO. To osobne ekrany. Gdy sklep dzia\u0142a i potrzebna jest tylko bezpieczniejsza kopia przed migracj\u0105, warto zacz\u0105\u0107 od powy\u017cszego przewodnika o kopii zapasowej.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">PrestaShop 1.7, 8 i 9 &#8211; edycja parameters.php<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Aby zmieni\u0107 po\u0142\u0105czenie baza danych prestashop w nowoczesnym sklepie, nale\u017cy u\u017cy\u0107 SFTP, SSH lub mened\u017cera plik\u00f3w hostingu. Je\u015bli to mo\u017cliwe, pracuje si\u0119 na kopii, a na \u017cywo podmienia plik jednym krokiem.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Otw\u00f3rz katalog g\u0142\u00f3wny sklepu i przejd\u017a do <code class=\"codecolorer text default\"><span class=\"text\">app\/config\/parameters.php<\/span><\/code>.<\/li>\n<li>Pobierz kopi\u0119 na komputer (zabezpieczenie przed cofni\u0119ciem zmian).<\/li>\n<li>Znajd\u017a klucze tablicy <code class=\"codecolorer text default\"><span class=\"text\">parameters<\/span><\/code>: <code class=\"codecolorer text default\"><span class=\"text\">database_host<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">database_port<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">database_name<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">database_user<\/span><\/code> i <code class=\"codecolorer text default\"><span class=\"text\">database_password<\/span><\/code>.<\/li>\n<li>Zast\u0105p tylko te warto\u015bci danymi z nowego hostingu (lub nowym has\u0142em). Klucz <code class=\"codecolorer text default\"><span class=\"text\">database_prefix<\/span><\/code> pozostaw bez zmian, chyba \u017ce faktycznie zmieniono prefiks wszystkich tabel.<\/li>\n<li>Zapisz plik i prze\u015blij go z powrotem z tymi samymi uprawnieniami co wcze\u015bniej.<\/li>\n<li>Wyczy\u015b\u0107 cache Symfony\/PrestaShop (nast\u0119pna sekcja), potem otw\u00f3rz front i Back Office w trybie prywatnym przegl\u0105darki.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Nazwy hosta zale\u017c\u0105 od dostawcy: <code class=\"codecolorer text default\"><span class=\"text\">localhost<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">127.0.0.1<\/span><\/code>, zdalna nazwa hosta lub czasem \u015bcie\u017cka socketu. Warto skopiowa\u0107 ci\u0105g hosta z panelu dok\u0142adnie &#8211; bez zgadywania. <code class=\"codecolorer text default\"><span class=\"text\">database_port<\/span><\/code> pozostaw pusty, gdy panel nie podaje portu innego ni\u017c domy\u015blny; ustaw go (cz\u0119sto <code class=\"codecolorer text default\"><span class=\"text\">3306<\/span><\/code>) tylko wtedy, gdy hosting wymaga tego wyra\u017anie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przyk\u0142adowa struktura (same placeholdery &#8211; nigdy wklejaj przyk\u0142adowych hase\u0142 na produkcji):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\nreturn array (\n  'parameters' =&gt;\n  array (\n    'database_host' =&gt; '127.0.0.1',\n    'database_port' =&gt; '',\n    'database_name' =&gt; 'your_database_name',\n    'database_user' =&gt; 'your_database_user',\n    'database_password' =&gt; 'your_database_password',\n    'database_prefix' =&gt; 'ps_',\n    'database_engine' =&gt; 'InnoDB',\n    \/\/ \u2026 pozosta\u0142e klucze zostaw jak w sklepie - nie wymy\u015blaj nowych warto\u015bci secret\/cookie\n  ),\n);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Zmieniaj tylko klucze bazy podane przez hosting. Modyfikacja <code class=\"codecolorer text default\"><span class=\"text\">secret<\/span><\/code>, <code class=\"codecolorer text default\"><span class=\"text\">cookie_key<\/span><\/code> lub <code class=\"codecolorer text default\"><span class=\"text\">cookie_iv<\/span><\/code> wyloguje wszystkich i mo\u017ce zepsu\u0107 sesje &#8211; to inna \u015bcie\u017cka odzyskiwania. Poprawne po\u0142\u0105czenie baza danych prestashop w tym pliku nie zadzia\u0142a, dop\u00f3ki nie wyczy\u015bci si\u0119 cache (poni\u017cej).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wyczy\u015b\u0107 \/var\/cache po zapisaniu pliku<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">PrestaShop trzyma skompilowan\u0105 konfiguracj\u0119 w cache. Gdy po\u0142\u0105czenie baza danych prestashop zosta\u0142o zaktualizowane w pliku, nale\u017cy usun\u0105\u0107 cache w <code class=\"codecolorer text default\"><span class=\"text\">\/var\/cache\/<\/span><\/code> &#8211; g\u0142\u00f3wnie foldery <code class=\"codecolorer text default\"><span class=\"text\">dev<\/span><\/code> i <code class=\"codecolorer text default\"><span class=\"text\">prod<\/span><\/code> (i podobne foldery \u015brodowisk, je\u015bli s\u0105). Usuwa si\u0119 te foldery lub ich zawarto\u015b\u0107 &#8211; nie ca\u0142y sklep i nie niepowi\u0105zane katalogi obok <code class=\"codecolorer text default\"><span class=\"text\">var<\/span><\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Back Office dzia\u0142a, front nie?<\/strong> Po zmianie po\u0142\u0105czenia z baz\u0105 ten podzia\u0142 prawie zawsze oznacza stary cache &#8211; najpierw wyczy\u015b\u0107 <code class=\"codecolorer text default\"><span class=\"text\">var\/cache<\/span><\/code>, zanim zaczniesz szuka\u0107 przyczyn w motywach, modu\u0142ach lub URL sklepu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Foldery <code class=\"codecolorer text default\"><span class=\"text\">dev<\/span><\/code> i <code class=\"codecolorer text default\"><span class=\"text\">prod<\/span><\/code> mog\u0105 by\u0107 ogromne (dziesi\u0105tki tysi\u0119cy ma\u0142ych plik\u00f3w). Lepiej u\u017cy\u0107 <strong>mened\u017cera plik\u00f3w<\/strong> hostingu lub <strong>SSH<\/strong> do usuni\u0119cia lub opr\u00f3\u017cnienia. Zwyk\u0142y FTP cz\u0119sto przetwarza pliki pojedynczo i mo\u017ce zaj\u0105\u0107 godziny. Gdy dost\u0119pny jest tylko FTP, warto <strong>zmieni\u0107 nazw\u0119<\/strong> <code class=\"codecolorer text default\"><span class=\"text\">prod<\/span><\/code> \/ <code class=\"codecolorer text default\"><span class=\"text\">dev<\/span><\/code> (np. na <code class=\"codecolorer text default\"><span class=\"text\">prod_old<\/span><\/code> \/ <code class=\"codecolorer text default\"><span class=\"text\">dev_old<\/span><\/code>), aby PrestaShop od razu utworzy\u0142 puste foldery, a stare drzewa usun\u0105\u0107 p\u00f3\u017aniej, gdy b\u0119dzie czas lub lepsze narz\u0119dzie.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Z katalogu g\u0142\u00f3wnego sklepu otw\u00f3rz <code class=\"codecolorer text default\"><span class=\"text\">var\/cache\/<\/span><\/code>.<\/li>\n<li>Usu\u0144 lub zmie\u0144 nazw\u0119 <code class=\"codecolorer text default\"><span class=\"text\">prod<\/span><\/code> i <code class=\"codecolorer text default\"><span class=\"text\">dev<\/span><\/code> (i inne foldery \u015brodowisk, je\u015bli s\u0105 widoczne).<\/li>\n<li>Gdy PHP-FPM dzia\u0142a pod innym u\u017cytkownikiem, w razie potrzeby utw\u00f3rz puste foldery <code class=\"codecolorer text default\"><span class=\"text\">prod<\/span><\/code> \/ <code class=\"codecolorer text default\"><span class=\"text\">dev<\/span><\/code>, aby serwer WWW m\u00f3g\u0142 ponownie zapisywa\u0107 pliki.<\/li>\n<li>Od\u015bwie\u017c sklep. Pierwsze \u0142adowanie mo\u017ce by\u0107 wolniejsze podczas przebudowy cache.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Gdy Parametry zaawansowane \u2192 Wydajno\u015b\u0107 jest dost\u0119pne, cache mo\u017cna wyczy\u015bci\u0107 te\u017c z Back Office &#8211; ale przy niepoprawnym po\u0142\u0105czenie baza danych prestashop logowanie cz\u0119sto nie dzia\u0142a, wi\u0119c czyszczenie na poziomie plik\u00f3w jest pewniejsz\u0105 \u015bcie\u017ck\u0105.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1703\" height=\"626\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache.png\" alt=\"Czyszczenie cache w Parametry zaawansowane \u2192 Wydajno\u015b\u0107 po zmianie po\u0142\u0105czenie baza danych prestashop\" class=\"wp-image-1994\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache.png 1703w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache-300x110.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache-1024x376.png 1024w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache-768x282.png 768w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache-1536x565.png 1536w, https:\/\/presta.site\/blog\/wp-content\/uploads\/2022\/01\/clear-cache-1200x441.png 1200w\" sizes=\"auto, (max-width: 1703px) 100vw, 1703px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Gdy po\u0142\u0105czenie baza danych prestashop nadal nie dzia\u0142a<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Przed ponown\u0105 edycj\u0105 ca\u0142ego pliku warto przej\u015b\u0107 te kontrole:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Access denied (Odmowa dost\u0119pu).<\/strong> B\u0142\u0119dny u\u017cytkownik lub has\u0142o, albo u\u017cytkownik MySQL nie ma uprawnie\u0144 z tego hosta. Has\u0142o resetuje si\u0119 w panelu i wkleja ostro\u017cnie (bez spacji na ko\u0144cu ani \u201esmart quotes\u201d z komunikatora).<\/li>\n<li><strong>Unknown database (Nieznana baza danych).<\/strong> <code class=\"codecolorer text default\"><span class=\"text\">database_name<\/span><\/code> nie odpowiada rzeczywistej nazwie schematu po przeniesieniu.<\/li>\n<li><strong>Cannot connect to server (Brak po\u0142\u0105czenia z serwerem).<\/strong> B\u0142\u0119dny <code class=\"codecolorer text default\"><span class=\"text\">database_host<\/span><\/code> lub port, firewall albo us\u0142uga bazy jest wy\u0142\u0105czona. Warto potwierdzi\u0107 dane w phpMyAdmin lub narz\u0119dziu MySQL hostingu.<\/li>\n<li><strong>Niezgodny prefiks.<\/strong> Tabele istniej\u0105, ale maj\u0105 inny prefiks ni\u017c <code class=\"codecolorer text default\"><span class=\"text\">database_prefix<\/span><\/code> &#8211; sklep \u0142\u0105czy si\u0119, potem wygl\u0105da na pusty lub zg\u0142asza brak tabel.<\/li>\n<li><strong>Pusta strona \/ WSOD.<\/strong> B\u0142\u0105d sk\u0142adni w <code class=\"codecolorer text default\"><span class=\"text\">parameters.php<\/span><\/code> (brakuj\u0105cy cudzys\u0142\u00f3w lub przecinek) mo\u017ce da\u0107 bia\u0142y ekran. Przywr\u00f3\u0107 pobran\u0105 kopi\u0119 i edytuj ponownie. Nasz <a href=\"https:\/\/presta.site\/blog\/pl\/bialy-ekran-smierci-wsod-w-prestashop-przewodnik-krok-po-kroku\/\" data-wpel-link=\"internal\">przewodnik o bia\u0142ym ekranie \u015bmierci<\/a> opisuje tryb debug, gdy plik jest poprawny, ale co\u015b innego zawodzi.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Centrum pomocy PrestaShop opisuje ten sam wzorzec b\u0142\u0119du po\u0142\u0105czenia i klucze do weryfikacji w <code class=\"codecolorer text default\"><span class=\"text\">parameters.php<\/span><\/code> &#8211; przydatne, gdy panel u\u017cywa innych sformu\u0142owa\u0144: <a href=\"https:\/\/help-center.prestashop.com\/hc\/en-us\/articles\/11332064842258--Database-connection-error-for-your-PrestaShop-store\" target=\"_blank\" rel=\"noopener noreferrer external\" data-wpel-link=\"external\">Database connection error for your PrestaShop store<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Starsze PrestaShop 1.5 &#8211; 1.6 &#8211; settings.inc.php<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Gdy sklep nadal dzia\u0142a na 1.5 lub 1.6, otw\u00f3rz <code class=\"codecolorer text default\"><span class=\"text\">config\/settings.inc.php<\/span><\/code> i zaktualizuj:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code class=\"codecolorer text default\"><span class=\"text\">_DB_SERVER_<\/span><\/code> (host)<\/li>\n<li><code class=\"codecolorer text default\"><span class=\"text\">_DB_NAME_<\/span><\/code><\/li>\n<li><code class=\"codecolorer text default\"><span class=\"text\">_DB_USER_<\/span><\/code><\/li>\n<li><code class=\"codecolorer text default\"><span class=\"text\">_DB_PASSWD_<\/span><\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><code class=\"codecolorer text default\"><span class=\"text\">_DB_PREFIX_<\/span><\/code> pozostaw bez zmian, chyba \u017ce tabele zosta\u0142y przeniesione pod inny prefiks. Zapisz, prze\u015blij plik, potem wyczy\u015b\u0107 foldery cache u\u017cywane w tej wersji (cz\u0119sto pod <code class=\"codecolorer text default\"><span class=\"text\">cache\/<\/span><\/code>). Ta sama zasada: z\u0142e has\u0142o wy\u0142\u0105cza sklep &#8211; i b\u0142\u0119dne po\u0142\u0105czenie baza danych prestashop tutaj zawiedzie tak samo jak w nowszych wersjach.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kr\u00f3tka lista kontrolna<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Kopia zapasowa plik\u00f3w i bazy.<\/li>\n<li>Zmie\u0144 po\u0142\u0105czenie baza danych prestashop w <code class=\"codecolorer text default\"><span class=\"text\">app\/config\/parameters.php<\/span><\/code> (1.7+) lub <code class=\"codecolorer text default\"><span class=\"text\">config\/settings.inc.php<\/span><\/code> (1.5 &#8211; 1.6).<\/li>\n<li>Ustawienie hosta, portu (je\u015bli wymagany), nazwy, u\u017cytkownika i has\u0142a zgodnie z panelem.<\/li>\n<li>Wyczyszczenie <code class=\"codecolorer text default\"><span class=\"text\">var\/cache<\/span><\/code> (lepiej mened\u017cer plik\u00f3w lub SSH; przy FTP czasem zmiana nazwy zamiast usuwania).<\/li>\n<li>Test frontu i Back Office; gdy panel dzia\u0142a, a front nie &#8211; ponowne czyszczenie cache przed innymi przyczynami. Gdy oba nie dzia\u0142aj\u0105, dopasuj b\u0142\u0105d do access denied \/ unknown DB \/ host unreachable, zanim zmienisz inne klucze.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Gdy po\u0142\u0105czenie baza danych prestashop zn\u00f3w dzia\u0142a, na nowym hostingu doko\u0144cz list\u0119 migracji (domena sklepu, SSL, poczta) &#8211; same ustawienia po\u0142\u0105czenia nie aktualizuj\u0105 tych element\u00f3w.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jak zmieni\u0107 po\u0142\u0105czenie baza danych prestashop w parameters.php (1.7\/8\/9) lub settings.inc.php (1.5-1.6), bezpiecznie wyczy\u015bci\u0107 var\/cache i naprawi\u0107 b\u0142\u0119dy access denied.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[149],"tags":[],"class_list":["post-1074","post","type-post","status-publish","format-standard","hentry","category-rozwoj"],"_links":{"self":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/1074","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/comments?post=1074"}],"version-history":[{"count":2,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/1074\/revisions"}],"predecessor-version":[{"id":2007,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/posts\/1074\/revisions\/2007"}],"wp:attachment":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/media?parent=1074"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/categories?post=1074"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/tags?post=1074"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}