PDA

Zobacz pełną wersję : Błąd w bazie danych podczas przenoszenia strony



_eva
03-03-2010, 17:00
Witam,

Chciałam przenieść stronę za pomocą JoomlaPack i kickstart - niestety pojawił się problem. Poniżej opiszę poszczególne kroki, które wykonałam:

1.Plik (joomla+baza) w formacie JPA + kickstart przesłałam przez ftp do gł. katalogu public_html
2. Uruchomiłam kickstart przez przeglądarkę
3.W ustawieniach JoomlaPack Kickstart wybrałam:
a) Operation Method: JavaScript
b)Extraction Method: Write directly to file
Reszta ustawień domyślnie
4.Po pomyślnym rozpakowaniu paczki uruchomiłam instalator
a)W sekcji Check jedno niezalecane ustawienie: włączone wyświetlanie błędów.

b)W sekcji DB Restore po wprowadzeniu informacji na temat bazy danych, oraz zaznaczeniu opcji - usunięcia istniejących tabel - w Restoration progress pojawił się komunikat o błędzie:

Error at the line 0: CREATE TABLE ' #_ _banner ' ('bid' int (11) NOT NULL ...

Query: DROP TABLE IF EXISTS ' #_ _banner ';

MySQL: MySQL query failed with erroe 1142 (DROP command denied to user [tu nazwa] for table 'jos_banner' ) The query was: DROP TABLE IF EXISTS 'jos_banner'

Problem ten uniemożliwia dokończenie instalacji.
Od razu nadmienię, że ustawiłam taką samą nazwę bazy danych, nazwę użytkownika i hasło - dla bazy na serwerze lokalnym i serwerze zewnętrznym.

Przyznam, że trochę mi głupio, że nie wiem jak to rozwiązać. Czytałam o procesie przenoszenia strony za pomocą JoomlaPack na stronach:
http://www.pomoc.joomla.pl/content/view/690/51/
http://www.design-joomla.pl/joomla-1.5/489-joomlapack.html
http://mslonik.pl/index.php/moja-joomla/joomla-artykuy/353-tworzenie-lokalnej-kopii-witryny-joomla
Po za tym próbowałam znaleźć taki błąd w google.
Jeśli ktoś wie jak rozwiązać ten problem, to bardzo proszę o wskazówkę co w tej sytuacji zrobić.

_eva
04-03-2010, 09:53
Próbowałam rozwiązać problem przez zapytanie w bazie danych na serwerze zew. :

W PhpMyAdmin > moja_baza > SQL > Zapytanie:
DROP TABLE IF EXISTS 'jos_banner'

Odpowiedź:
"Błąd
zapytanie SQL:

DROP TABLE IF EXISTS 'jos_banner'

MySQL zwrócił komunikat:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''jos_banner'' at line 1 "

Może napiszę jak ja to rozumiem bo nie jestem pewna :

Masz błąd w twojej składni SQL; sprawdź dobór parametrów w twojej wersji serwera MySQL dla właściwej składni do użycia blisko ''jos_banner'' w lini 1.

Przeszłam do struktury bazy danych > zaznaczyłam 1 tabelę jos_banner > struktura > i pokazał mi się widok całej struktury tej tabeli. Nie wiem na co powinnam zwrócić uwagę, słabo orientuję się w MySQL.
Bardzo proszę o jakieś wskazówki.

_eva
04-03-2010, 10:06
Domyślam się, że powinnam coś zmienić w polu "bid" - poniżej podaje wartości:
Typ: int(11)
Metoda porównywania napisów: puste
Atrybuty: puste
Null: Nie
Domyślnie: puste
Dodatkowo: auto_increment

Porównałam to z wartościami w bazie na serwerze lokalnym i jedyna różnica to pole: Domyślnie: None
Dodam, że strona dobrze działa na serwerze lokalnym. Problem pojawił się podczas przenoszenia strony na serwer zew.
Czy ktoś jak rozwiązać ten problem?

_eva
04-03-2010, 10:27
Zrobiłam jeszcze 1 rzecz:
W tabela jos_baner > struktura > SQL
Odpoweidź:
SELECT * FROM `jos_banner` WHERE 1

Ale niestety nadal nie wiem jak to rozwiązać :-(

zwiastun
04-03-2010, 11:26
Jeśli Ci strona działa poprawnie na serwerze lokalnym , to przenieś bez pośrednictwa JoomlaPack

_eva
04-03-2010, 11:38
Ok, dzięki Zwiastun, że napisałeś. Może powstał jakiś błąd podczas tworzenia archiwum bazy w JPA? Spróbuję przenieść tradycyjnie.

_eva
04-03-2010, 11:54
Mam jeszcze 1 pytanie - mam nadzieję, że nie głupie :-)
Czy poniższy sposób przeniesienia będzie ok?
1. kopiuję wszystkie pliki joomla z lokalnego serwera do 1 folderu
2. dodaję do niego katalog installation (z oryginalnej paczki joomla)
3. joomla.zip przesyłam przez ftp na serwer zew. do gł.katalogu
4. rozpakowuję paczkę przez menadżera plików
5. umieszczam wszystkie pliki z paczki bezpośrednio w katalogu gł.
6. rozpoczynam proces instalacji poprzez wywołanie instalatora w przeglądarce
7. gdy instalacja przebiegnie ok - kasuję katalog installation
8. przechodzę do bazy na serwerze zew. - kasuję jej zawartość
9. importuję plik bazy danych w formacie sql
10. przechodzę do strony i sprawdzam czy wszystko działa poprawnie.

Wiem, że są też inne sposoby ,ale czy ten który opisałam będzie ok?

zwiastun
04-03-2010, 12:01
Cała procedura jest dokładnie opisana i na wiki i na pomoc.joomla.pl. Przenoszenie obywa się bez procedury instalacyjnej.
W skrócie
1. Kopiujesz z lokalnego na serwer cały katalog Joomla (z wyjątkiem configuration.php)
2. Importujesz bazę danych
3. Poprawiasz wpisy w configuration.php iposyłasz na serwer.
Ale doczytaj.
http://wiki.joomla.pl/Kategoria:Instalacja_i_aktualizacja

_eva
04-03-2010, 12:10
Ok, dzięki :-)
Faktycznie przeoczyłam, że trzeba poprawić wpisy w configuration.php !
Na pewno :
var $log_path
var $tmp_path
wpisy dla mysl
var $smtphost
Ale jeszcze sprawdzę czy to wszystko.
Dzięki :-)