Project

General

Profile

Actions

Task #36419

closed

Migrate core from mysql to mysqli

Added by Stefan Neufeind about 12 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2012-04-22
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
6.0
PHP Version:
Tags:
Complexity:
Sprint Focus:

Description

Without using dbal core still uses the mysql-extension instead of mysqli. But PHP officially claims mysql to be "legacy" and mysqli is shipped with PHP since quite a while now. Since PHP 5.3.0 now mysqli also supports persistent connections. So it should be "quite simple" to replace the few direct calls to mysql-functions with mysqli-equivalents. It's just a different ressource (well, an object then) that is returned, so the inner parts in TYPO3 passing around the DB-handler can (almost) stay as is.

All extensions should use TYPO3-functionality to access the database, so no change should be required on that part. It might be that some directly execute mysql_query()-calls or the like, so this is kind of a "break". But things are easy to fix - and then maybe they could switch to using the TYPO3-functions for it anyway :-)

Might this be a candidate for 6.0? Patch itself should be quite easy to do.


Related issues 7 (0 open7 closed)

Related to TYPO3 Core - Feature #16232: support mysqli extensionClosed2006-06-13

Actions
Related to TYPO3 Core - Bug #46802: Typo3DatabaseBackend get function does not return FALSEClosed2013-03-30

Actions
Related to TYPO3 Core - Bug #46805: Integrity test failsClosed2013-03-30

Actions
Related to TYPO3 Core - Bug #46806: fetch_field_redirect returns object but not arrayClosed2013-03-30

Actions
Related to TYPO3 Core - Bug #46330: Install tool: PHP Runtime Deprecation Notice: mysql_list_dbs()Closed2013-03-15

Actions
Blocks TYPO3 Core - Bug #46825: mysqli::real_connect() / Unknown MySQL serverClosed2013-03-31

Actions
Precedes TYPO3 Core - Bug #47090: Database link is expected to be an objectClosedMathias Schreiber2013-04-10

Actions
Actions #1

Updated by Philipp Gampe about 12 years ago

+1 If the API does not change and dbal works too, I see no reason not to move to modern technologies :P

Actions #2

Updated by Philipp Gampe almost 12 years ago

Warming this up, do you want to push a patch?

Actions #3

Updated by Felix Kopp over 11 years ago

Am I correct that only the typo3_db sql functions must be changed +dbal?

Actions #4

Updated by Stefan Neufeind over 11 years ago

Last time I gave it a short look imho not too many things need updating. Imho we might think whether it makes sense in this step to also change the variable for accessing the database to be an array (to possibly hold multiple connections, which could be a pool to be used by extensions or so).

Actions #5

Updated by Markus Klein about 11 years ago

Since PHP 5.4 is out mysql is deprecated now. I guess it's a good time now to integrate mysgli in TYPO3 CMS 6.1.
PDO is also an option, but I don't have experience with it.

Actions #6

Updated by Gerrit Code Review about 11 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/19280

Actions #7

Updated by Gerrit Code Review about 11 years ago

Patch set 2 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/19280

Actions #8

Updated by Gerrit Code Review about 11 years ago

Patch set 3 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/19280

Actions #9

Updated by Gerrit Code Review about 11 years ago

Patch set 4 for branch master has been pushed to the review server.
It is available at https://review.typo3.org/19280

Actions #10

Updated by Stefan Neufeind about 11 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100
Actions #11

Updated by Benni Mack over 5 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF