Witam! Miałem mały problem z serwerem swoim głównym i musiałem przenieśćsamego lms-a na oddzielną maszynę. -Zainstalowałem więc nowy system debian 5 - był debian 4-troszkę nowszą bazę mysql 5.0.51 - a była 5.0.32-przeniosłem bazę z /usr/lib/mysql/lms - po prostuskopiowałem przez ssh - inaczej się nie dało - bo tamten serwer pagip... po kopiowaniu poprawiłem prawa do plików bazy chmod 660 - oraz właściciel mysql-odpaliłem w sumie to co trzeba , i mam mały problem.. strona do zalogowania otwiera się normalnie.po zalogowaniu do lms otwiera się strona z informacją - alewyskakują byki.Na górnej części strony mam coś takiego: Warning: array_merge() [function.array-merge]: Argument #1 is not an array in /home/lms/www/lib/LMS.class.php on line 918 Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/lms/www/lib/LMS.class.php on line 918 a pod spodem błędy od mysql : Wystąpiły błędy w obsłudze bazy danych!Zapytanie: SELECT COUNT(id) AS total, COUNT(CASE WHEN status = 3 THEN 1END) AS connected, COUNT(CASE WHEN status = 2 THEN 1 END) ASawaiting, COUNT(CASE WHEN status = 1 THEN 1 END) AS interested FROMcustomersview WHERE deleted=0Błąd: There is no 'admin'@'' registeredZapytanie: SELECT SUM(a.value)*-1 AS debtvalue, COUNT(*) AS debt FROM(SELECT SUM(value) AS value FROM cash LEFT JOIN customersview ON(customerid = customersview.id) WHERE deleted = 0 GROUP BYcustomerid HAVING SUM(value) < 0 ) aBłąd: There is no 'admin'@'' registered Nie widać spisu klientów, faktur ..... np. podczas wyświetlenia listy faktur mam coś takiego: Wystąpiły błędy w obsłudze bazy danych!Zapytanie: SELECT d.id AS id, number, cdate, type, d.customerid, d.name,address, zip, city, countries.name AS country, template, closed,CASE reference WHEN 0 THEN SUM(a.value*a.count) ELSESUM((a.value+b.value)*(a.count+b.count)) - SUM(b.value*b.count) ENDAS value, COUNT(a.docid) AS count FROM documents d JOINinvoicecontents a ON (a.docid = d.id) LEFT JOIN invoicecontents bON (d.reference = b.docid AND a.itemid = b.itemid) LEFT JOINcountries ON (countries.id = d.countryid) LEFT JOIN numberplans ON(d.numberplanid = numberplans.id) LEFT JOIN ( SELECT DISTINCTa.customerid FROM customerassignments a JOIN excludedgroups e ON(a.customergroupid = e.customergroupid) WHERE e.userid =lms_current_user() ) e ON (e.customerid = d.customerid) WHEREe.customerid IS NULL AND (type = 3 OR type = 1) GROUP BY d.id,number, cdate, d.customerid, d.name, address, zip, city, template,closed, type, reference, countries.name ORDER BY d.id ascBłąd: FUNCTION lms.lms_current_user does not existZapytanie: SELECT g.id, g.name, g.description FROM customergroups gWHERE NOT EXISTS ( SELECT 1 FROM excludedgroups WHERE userid =lms_current_user() AND customergroupid = g.id) ORDER BY g.name ASCBłąd: FUNCTION lms.lms_current_user does not exist czy jest jakaś rada na to ?coś napewno spieprzyłem ;)czy ktoś ma jakiś pomysł ? Proszę o info. Pozdrawiam... Jacek.J -- Pozdrowienia, Jacek.J
O ile sie nie myle to brakuje Ci funkcji w MySQL'u ktore sa w bazie mysql a nie lms ... musialbys najlepiej wrzucic mysql -u "USER" -p -d "BAZA" < doc/lms.mysql i wtedy juz Twoja baza powinna dzialac OK
Albo znajdz w tym pliku funkcje i wrzuc do bazy poprostu
"DROP FUNCTION IF EXISTS lms_current_user; CREATE FUNCTION lms_current_user() RETURNS int(11) NO SQL RETURN @lms_current_user; DROP FUNCTION IF EXISTS mask2prefix; CREATE FUNCTION mask2prefix(mask bigint) RETURNS smallint DETERMINISTIC RETURN bit_count(mask);
DROP FUNCTION IF EXISTS broadcast; CREATE FUNCTION broadcast(address bigint, mask bigint) RETURNS bigint DETERMINISTIC RETURN address + (pow(2, (32-mask2prefix(mask)))-1);
DROP FUNCTION IF EXISTS int2txt; CREATE FUNCTION int2txt(num bigint) RETURNS char(20) DETERMINISTIC RETURN CAST(num AS char(20)); " to powinno pomoc ... :)