Avatar billede vagnk Juniormester
25. oktober 2005 - 09:42 Der er 14 kommentarer og
1 løsning

phpmyadmin problemer med start/connect

Nu må jeg vist have hjælp.

Jeg har fået installeret MySql 4.1 igen og dertil phpMyAdmin 2.6.4-pl1

Når jeg starter phpMyAdmin siger den:
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client

Den danske oversættelse af fejlteksten er i allerhøjeste grad misvisende:
phpMyAdmin forsøgte at forbinde til MySQL-serveren, og serveren afviste forbindelsen. Du bør tjekke host, brugernavn og kodeord i config.inc.php og sikre dig at de svarer til den information du har fået af administratoren af MySQL-serveren.

Men for en ordens skyld har jeg følgende i config.inc.php:
['host'] = 'localhost';
['auth_type'] = 'config';   
['user'] = 'root'
['password'] = 'gyllefrantsz';

Jeg har testet med både ‘http’ og ‘cookie’ i [‘auth_type’]. Det lykkedes mig at få fejlen #1251 frem et par gange her også. Jeg har IKKE testet om php’s MySql-funktioner virker, men det går jeg ud fra, idet jeg sagtens kan logge ind via en DOSbox (kommandolinje).

Apache og PHP kører uden konflikter.
Avatar billede mc.lucifer Praktikant
25. oktober 2005 - 09:48 #1
Jeg havde samme problem, men løste det ved at bruge php_mysqli.dll og så i phpmyadmin conf fil skal du så også sætte mysqli til at være den brugte extension

Om det er 100% Korekt ved jeg ikke men det virker upåklageliget

MC
Avatar billede Slettet bruger
25. oktober 2005 - 10:44 #2
Hvis der ikke allere er gået 'ged' i installationen, skal du ved første opstart gå i MySql/bin dir og starte winmysqladmin.exe og der sætte bruger og pass til brug for MySqlAdmin
Avatar billede Slettet bruger
25. oktober 2005 - 10:47 #3
Forøvrigt kan du jo logge ind i MySqlAdmin ved kun at bruge 'user' root og ingen 'password', der kan du så oprette nye brugere og sætte password på 'root', hvor der ingen password er fra startinstall
Avatar billede Slettet bruger
25. oktober 2005 - 10:54 #4
Måske kan du få nogle ideer til hvordan du ud af nedenstående kan komme videre:

Hvis du har brugt den nemme version, hvor du har installeret som programmerne foreslår :
er Apache i c:\apache
og Mysql i c:\mysql
og PHP i c:\php
og phpmyadmin skal så udpakkes i en mappe (myadm) som lægges i c:\apache\htdocs

Jeg går ud fra at alt virker, blot kan du ikke starte phpmyadmin ?

det gør du sådan !
Start din browser og skriv link til din MySqlAdmin index.php
noget a. la. http://localhost/dir_hvor_din_mysqladmin_ligger/index.php
Med Apache ligger den normalt i c:/apache/htdocs, og så er linket
http://localhost/mysqladmin/index.php
..............

Velkommen til phpMyAdmin 2.5.6 - Login
Language:    Danish (da-iso-8859-1)  <UDFØR>
Konfigurationsfilen skal nu bruge et hemmeligt kodeord (blowfish_secret).
sat til : admin
efter der er logget ind får du sikker denne meddelelse:
$cfg['PmaAbsoluteUri'] direktivet SKAL være sat i konfigurationsfilen!

Din konfigurationsfil indeholder indstillinger (root og uden kodeord) som svarer til en standard MySQL priviligeret brugerkonto. Din MySQL server kører med denne standardindstilling, er åben for indtrængen, og du bør virkelig gøre noget ved dette sikkerhedshul.

Hvis det kun er til internt brug, skal du ikke tage dig af dette, skal du derimod på nettet med din base skal den sættes.

...................................

Start din browser og skriv link til din MySqlAdmin index.php
noget a. la. http://localhost/dir_hvor_din_mysqladmin_ligger/index.php
Med Apache ligger den normalt i c:/apache/htdocs, og så er linket
http://localhost/mysqladmin/index.php

Login: user: root - Password ingen

På hovedsiden skal du vælge >Privilegier< og på listen vælger du
Bruger:root og Vært:localhost og yderst til højre trykker du på >RET<
og på den nye side finder du
>Ændre password, bruger du hvis du vil sætte password på >root
eller hvis du vil oprette en ny bruger med samme rettigheder som >root
skal du bruge
>Ret Login Information/Kopi'er bruger,
der kan du se at der ved >Password ikke står noget.
Skriv et >password og skriv igen >password
Hvis du så klikker på >Udfør laver den en ny bruger med samme rettigheder som >root  og du beholder >bruger : root
fordi der er tjek i feltet >behold den gamle, og der er så også andre muligheder.
Men behold den gamle, så kan du altid slette/rette
Avatar billede vagnk Juniormester
25. oktober 2005 - 11:07 #5
mc.lucifer først:
Jeg satte følgende i php.ini:
extension=php_mysqli.dll

Jeg sikrede mig at php_mysqli.dll lå i PHP\ext

Jeg fik følgende messagebox (Warning) 3 gange efter opstart:
unknown(): Unable to load dynamic library ’.php_mysqli.dll – Det angivne modul blev ikke fundet.

Og naturligvis fik jeg følgende da jeg forsøgte at phpmyadmin:
kan ikke indlæse udvidelsen mysqli,
check PHP-konfigurationen!

Aha, tænkte jeg det kunne jo være filen skulle over i \extension mappen, og det gjorde jeg så og bootede igen. Men ak – jeg fik meddelelsen igen tre gange om at den ikke kunne finde

Derefter rettede jeg config.inc.php til:
['extension'] = 'php_mysqli';

Nu kunne den skam læse dll-filen med det resultat at jeg fik en fuldstændig blank HTML-side.
???
Avatar billede vagnk Juniormester
25. oktober 2005 - 11:21 #6
Og så til ibtage:
komment 1: Er i orden

komment 2: Jeps. Det kunne jeg med den gamle Mysql og phpmysql. Problemet er at jeg slet ikke får lov at komme ind.

komment 3: Det meste af det har jeg godt nok check på. Jeg har installeret med msi-filen og valgt de defaultvalg som installationen foreslår, og som sagt – jeg kan sagtens logge ind fra en dosbox og sandsynligvis osse fra php-funktioner. Bare jeg kunne få Mysql til at acceptere den måde phpmyadmin forsøger at logge ind på. Det er nemlig sådan jeg tolker fejl #1251 i den amerikanske udgave. Jeg har forsøgt med [’auth_type’]=’cookie’ og sat blowfish pwd og der ryger jeg osse ind i fejl #1251.
???
Avatar billede Slettet bruger
25. oktober 2005 - 11:41 #7
Her lige en stump fra min config.inc.php det er v.2.6.0 men i incfilen står der config.inc.php,v 2.41 2004/09/23

$cfg['blowfish_secret'] = '';

/**
* Server(s) configuration
*/
$i = 0;
// The $cfg['Servers'] array starts with $cfg['Servers'][1].  Do not use $cfg['Servers'][0].
// You can disable a server config entry by setting host to ''.
$i++;
$cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address
$cfg['Servers'][$i]['port']          = '';          // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket']        = '';          // Path to the socket - leave blank for default socket
$cfg['Servers'][$i]['connect_type']  = 'tcp';      // How to connect to MySQL server ('tcp' or 'socket')
$cfg['Servers'][$i]['extension']    = 'mysql';    // The php MySQL extension to use ('mysql' or 'mysqli')
$cfg['Servers'][$i]['compress']      = FALSE;      // Use compressed protocol for the MySQL connection
                                                    // (requires PHP >= 4.3.0)
$cfg['Servers'][$i]['controluser']  = '';          // MySQL control user settings
                                                    // (this user must have read-only
$cfg['Servers'][$i]['controlpass']  = '';          // access to the "mysql/user"
                                                    // and "mysql/db" tables).
                                                    // The controluser is also
                                                    // used for all relational
                                                    // features (pmadb)
$cfg['Servers'][$i]['auth_type']    = 'config';    // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user']          = 'root';      // MySQL user
$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed
                                                    // with 'config' auth_type)
$cfg['Servers'][$i]['only_db']      = '';          // If set to a db-name, only
                                                    // this db is displayed in left frame
                                                    // It may also be an array of db-names, where sorting order is relevant.
Avatar billede mc.lucifer Praktikant
25. oktober 2005 - 12:32 #8
Du skal selvfølgelig have modulet php_mysqli.dll liggende på serveren, det kan downloades fra en binær pakker på www.php.net

MC
Avatar billede Slettet bruger
25. oktober 2005 - 12:36 #9
Her en anden version:

* If the auto-detection code does work properly, you can set to TRUE the
* $cfg['PmaAbsoluteUri_DisableWarning'] variable below.
*/
$cfg['PmaAbsoluteUri'] = (!empty($HTTPS) ? 'https' : 'http') . '://' . $_SERVER['SERVER_NAME'] . (!empty($_SERVER['SERVER_PORT']) ? ':' . $_SERVER['SERVER_PORT'] : '') . substr($_SERVER['SCRIPT_NAME'], 0, strrpos($_SERVER['SCRIPT_NAME'], '/')+1);



/**
* Disable the default warning about $cfg['PmaAbsoluteUri'] not being set
* You should use this if and ONLY if the PmaAbsoluteUri auto-detection
* works perfectly.
*/
$cfg['PmaAbsoluteUri_DisableWarning'] = TRUE;

/**
* Disable the default warning that is displayed on the DB Details Structure page if
* any of the required Tables for the relationfeatures could not be found
*/
$cfg['PmaNoRelation_DisableWarning']  = FALSE;

/**
* The 'cookie' auth_type uses blowfish algorithm to encrypt the password. If
* at least one server configuration uses 'cookie' auth_type, enter here a
* passphrase that will be used by blowfish.
*/
$cfg['blowfish_secret'] = 'ib';

/**
* Server(s) configuration
*/
$i = 0;
// The $cfg['Servers'] array starts with $cfg['Servers'][1].  Do not use $cfg['Servers'][0].
// You can disable a server config entry by setting host to ''.
$i++;
$cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address
$cfg['Servers'][$i]['port']          = '';          // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket']        = '';          // Path to the socket - leave blank for default socket
$cfg['Servers'][$i]['connect_type']  = 'tcp';      // How to connect to MySQL server ('tcp' or 'socket')
$cfg['Servers'][$i]['compress']      = FALSE;      // Use compressed protocol for the MySQL connection
                                                    // (requires PHP >= 4.3.0)
$cfg['Servers'][$i]['controluser']  = '';          // MySQL control user settings
                                                    // (this user must have read-only
$cfg['Servers'][$i]['controlpass']  = '';          // access to the "mysql/user"
                                                    // and "mysql/db" tables).
                                                    // The controluser is also
                                                    // used for all relational
                                                    // features (pmadb)
$cfg['Servers'][$i]['auth_type']    = 'http';    // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user']          = 'root';      // MySQL user
$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed
                                                    // with 'config' auth_type)
$cfg['Servers'][$i]['only_db']      = '';          // If set to a db-name, only
                                                    // this db is displayed in left frame
                                                    // It may also be an array of db-names, where sorting order is relevant.
Avatar billede vagnk Juniormester
25. oktober 2005 - 13:46 #10
mc.lucifer: Min server er 'localhost' så når du siger den skal ligge på serveren, så mener du forhåbentligt \system32 i \windows??

ibtage: I de to eksempler du viser har du kørt både http og config i ['auth_type']. Det har jeg osse prøvet og desuden 'cookie'. Hvis jeg sender det korrekte passw. med får jeg fejlen #1251 og hvis jeg sender et forkert passw. så får jeg besked om det. Min konklusion indtil videre: phpmyadmin kan sludre med mysql og få respons, men når den forsøger at logge på, så anerkender mysql ikke den måde phpmyadmin gør det på.

Jeg har en formodning om at hvis jeg går tilbage til en tidligere version (3.??) af mysql, så er problemet løst. Men det vil s'gu da være tyndt ik'?

Hilsen Vagn
Avatar billede Slettet bruger
25. oktober 2005 - 19:17 #11
Hvis du syntes, så pak lige din config.inc.php og sen den til mig, så vil jeg prøve den i min installation !!!

Min mail ibtage@gmail.com
Avatar billede vagnk Juniormester
26. oktober 2005 - 08:32 #12
ibtage: jeg sender dig lige filen senere i dag. Men jeg tror oprigtigt talt at den vil fungere mod din MySql. Jeg har prøvet ældre og nyere versioner af både MySql og phpMyAdmin med samme nedslående resultater. Jeg er ved at tro at det har noget at gøre med selve PHP eller muligvis min browser ("Avant" popups osv?). Så nu er det i den retning jeg prøver mig frem.
Vagn
Avatar billede mc.lucifer Praktikant
26. oktober 2005 - 08:43 #13
Hvis du nu søger på din fejl på google vil den fremkomme at du skal gøre som jeg siger, Jeg vil gerne finde filen til dig men det kraver at du fortæller mig lidt ting

1. OS
2. Webserver "IIS / Appache"
3. Version af PHP
4. Instalations form "Installer / Binary"
5. Har du kodet dit extenstions dir ind i windows´ invirement variabler ?

MC
Avatar billede peet49 Nybegynder
09. december 2005 - 17:45 #14
Lukketid??
Avatar billede vagnk Juniormester
24. juni 2011 - 09:58 #15
Lukket.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester