Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP Erweiterungen für MySQl fehlen

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #31
    Sind denn jetzt überhaupt in einer deiner vielen INIs diese beiden Zeilen eingetragen?

    Code:
    extension=pdo_mysql.so
    extension=mysqli.so
    Wenn ja, was sagt das Webserver-Log? Wenn nein, eintragen und Webserver neu starten!

    Kommentar


    • #32
      Kann auch sein dass du die extension erst noch installieren musst, z.B. mit:
      Code:
      sudo apt-get install php5-mysql

      Kommentar


      • #33
        Zitat von Meister1900 Beitrag anzeigen
        Sind denn jetzt überhaupt in einer deiner vielen INIs diese beiden Zeilen eingetragen?

        Code:
        extension=pdo_mysql.so
        extension=mysqli.so
        Wenn ja, was sagt das Webserver-Log? Wenn nein, eintragen und Webserver neu starten!
        und die vielen INIs werden automatisch eingebunden?

        Kommentar


        • #34
          Zitat von Meister1900 Beitrag anzeigen
          Sind denn jetzt überhaupt in einer deiner vielen INIs diese beiden Zeilen eingetragen?

          Code:
          extension=pdo_mysql.so
          extension=mysqli.so
          Wenn ja, was sagt das Webserver-Log? Wenn nein, eintragen und Webserver neu starten!
          ok. also ich weiß zwar nicht warum, aber es ist so:
          in dem verzeichnis /etc/php/7.0/apache2/conf.d sind ganz viele INIs. In der pdo.ini steht: /etc/php/7.0/mods-available/pdo.ini

          Und in dieser /etc/php/7.0/mods-available/pdo.ini steht dann
          Code:
          extension=pdo_mysql.so

          also ich weiß nicht ob er die pdo.ini (im conf.d Verzeichnis) automatisch einbindet!

          Und zu
          Code:
          extension=pdo_mysql.so
          hätte ich auch noch eine Frage:
          Weiß PHP automatisch wo er die extension suchen soll oder muss ein exakter Pfad angegeben werden?



          LG
          PHPWriter23

          Kommentar


          • #35
            Wo er die suchen soll steht in extension_dir

            Versuche mal folgendes:

            Code:
            sudo apt-get install php7.0-mysql
            sudo phpenmod pdo_mysql
            sudo service apache2 restart

            Kommentar


            • #36
              Zitat von Meister1900 Beitrag anzeigen
              Wo er die suchen soll steht in extension_dir

              Versuche mal folgendes:

              Code:
              sudo apt-get install php7.0-mysql
              sudo phpenmod pdo_mysql
              sudo service apache2 restart

              ok. Das hat eigentlich gut geklappt.

              Nur kam bei
              Code:
              Sudo phpenmod pdo_mysql
              folgende Ausgabe:

              Code:
              WARNING: Not enabling the pdo_mysql module for PHP 7.0 apache2 SAPI since module symlink
              WARNING: already exists in /etc/php/7.0/apache2/conf.d with different content.
              WARNING: Not enabling the pdo_mysql module for PHP 7.0 fpm SAPI since module symlink
              WARNING: already exists in /etc/php/7.0/fpm/conf.d with different content.
              WARNING: Not enabling the pdo_mysql module for PHP 7.0 cgi SAPI since module symlink
              WARNING: already exists in /etc/php/7.0/cgi/conf.d with different content.
              WARNING: Not enabling the pdo_mysql module for PHP 7.0 cli SAPI since module symlink
              WARNING: already exists in /etc/php/7.0/cli/conf.d with different content.

              Es hört sich so an als würde er es nicht aktivieren.

              LG
              PHPWriter23

              Kommentar


              • #37
                Dann mal restarten und testen.
                Wenn immer noch nicht geladen, die alten symlinks löschen und erneut phpenmod ausführen

                Kommentar


                • #38
                  Zitat von PHPWriter23 Beitrag anzeigen
                  Weil ich überhaupt nicht mehr drauf zugreifen konnte musste ich das System neuinstallieren.
                  Und als ich nun alles neuinstalliert habe, ging das Modul eben nicht mehr.
                  Ich vermute dabei hast du was falsch gemacht. Wie bist du denn da vorgegangen?
                  Hast du Teile aus der alten Installation versucht zu übernehmen?

                  Kommentar


                  • #39
                    Zitat von Meister1900 Beitrag anzeigen

                    Ich vermute dabei hast du was falsch gemacht. Wie bist du denn da vorgegangen?
                    Hast du Teile aus der alten Installation versucht zu übernehmen?
                    Ja, ich habe probiert alles zu übernehmen. Ich habe auch alles über apt-get (eigentlich sauber) installiert.

                    Keine Ahnung warum das Modul nicht geht

                    Kommentar


                    • #40
                      --Doppelpost--

                      Kommentar


                      • #41
                        Zitat von Meister1900 Beitrag anzeigen
                        Dann mal restarten und testen.
                        Wenn immer noch nicht geladen, die alten symlinks löschen und erneut phpenmod ausführen
                        Danke für den Tipp! Nachdem ich alle Symlinks gelöscht hatte, habe ich dann also erneut phpenmod ausgeführt.
                        Diesmal kam keine Fehlermeldung - aber PDO oder MySQLi funktioniert immer noch nicht!
                        Ich habe sogar schon versucht, mit
                        Code:
                        sudo apt-get purge --autoremove php-mysql php7.0-mysql
                        alles mit MySQL zu entfernen.
                        Nachdem ich es aber wieder installiert hatte, ging es immer noch nicht.

                        Ich weiß überhaupt nicht was ich tun soll.

                        Hier ist nochmal der Errorlog bei MySQL Befehlen:

                        Code:
                        Call to undefinded function mysqli_connect
                        beziehungsweise

                        Code:
                        Class "PDO" not found
                        LG
                        PHPWriter23

                        Kommentar


                        • #42
                          Gerade eben tauchte in der Kommandozeile folgender Errorlog auf:


                          Code:
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_sqlite.so' - /usr/lib/php/20151012/pdo_sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/sqlite.so' - /usr/lib/php/20151012/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
                          PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0
                          Die Erweiterungen können also nicht geladen werden (was ich aber ja schon bemerkte ).

                          Könnt ihr etwas mit dieser Ausgabe anfangen?


                          Liebe Grüße
                          PHPWriter23

                          Kommentar


                          • #43
                            Ich hab das mal für dich gegoogelt:

                            The reason because you need to load mysqlnd before you load the mysql/php-mysqli/mysqli/php-mysqli extension.
                            Check you php.ini whether php-mysqlnd has been loaded before you load those extensions. Sometimes, apache decided to separate all the extensions into separate .ini files, you have to make sure that the mysqlnd file is loaded before php-mysqli extension and friend by renaming the file.
                            When you load mysqli after mysqlnd, this solves the issue. BUT
                            if you use phpenmod to enable the modules they enable in alphabetical order. mysqli is before mysqlnd in the order.
                            I got around this by renaming the symlinks to mysqli to zmysqli - crude, but it worked.

                            Kommentar


                            • #44
                              Zitat von Meister1900 Beitrag anzeigen
                              Ich hab das mal für dich gegoogelt:


                              Vielen Dank für deine ertragreiche Suche.
                              Dies hat vermutlich einige Probleme gelöst.
                              Nun kommt aber noch dieser Fehler:
                              Code:
                              PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mysqli.so' - /usr/lib/php/20151012/mysqli.so: undefined symbol: mysqlnd_connect in Unknown on line 0
                              PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/pdo_mysql.so' - /usr/lib/php/20151012/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0

                              Der Errorlog ist aber schon um Einiges kürzer, deshalb meine ich, dass deine Hilfe dazu beigetragen hat.

                              Aber wie löse ich jetzt noch diesen Fehler?

                              LG
                              PHPWriter23

                              Kommentar


                              • #45
                                Du musst halt sicherstellen, dass die Extensions in der richtigen Reihenfolge geladen werden:

                                Code:
                                ...
                                extension=mysqlnd.so
                                extension=mysqli.so
                                extension=pdo_mysql.so
                                ...

                                Kommentar

                                Lädt...
                                X