MediaWiki  1.33.0
MssqlInstaller Class Reference

Class for setting up the MediaWiki database using Microsoft SQL Server. More...

Inheritance diagram for MssqlInstaller:
Collaboration diagram for MssqlInstaller:

Public Member Functions

 canCreateAccounts ()
 Return true if the install user can create accounts. More...
 
 createTables ()
 Create database tables from scratch. More...
 
 getConnectForm ()
 
 getGlobalDefaults ()
 Get a name=>value map of MW configuration globals for the default values. More...
 
 getLocalSettings ()
 Get the DBMS-specific options for LocalSettings.php generation. More...
 
 getName ()
 
 getSchemaVars ()
 Get variables to substitute into tables.sql and the SQL patch files. More...
 
 getSettingsForm ()
 
 isCompiled ()
 
 openConnection ()
 
 preInstall ()
 Allow DB installers a chance to make last-minute changes before installation occurs. More...
 
 preUpgrade ()
 Allow DB installers a chance to make checks before upgrade. More...
 
 setupDatabase ()
 
 setupUser ()
 
 submitConnectForm ()
 Set variables based on the request array, assuming it was submitted via the form returned by getConnectForm(). More...
 
 submitSettingsForm ()
 
- Public Member Functions inherited from DatabaseInstaller
 __construct ( $parent)
 Construct and initialise parent. More...
 
 checkPrerequisites ()
 Checks for installation prerequisites other than those checked by isCompiled() More...
 
 createExtensionTables ()
 Create the tables for each extension the user enabled. More...
 
 doUpgrade ()
 Perform database upgrades. More...
 
 enableLB ()
 Set up LBFactory so that wfGetDB() etc. More...
 
 getCheckBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled checkbox to configure a local boolean variable. More...
 
 getConnection ()
 Connect to the database using the administrative user/password currently defined in the session. More...
 
 getGlobalNames ()
 Get an array of MW configuration globals that will be configured by this class. More...
 
 getInstallUserBox ()
 Get a standard install-user fieldset. More...
 
 getInternalDefaults ()
 Get a name=>value map of internal variables used during installation. More...
 
 getPasswordBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled password box to configure a local variable. More...
 
 getRadioSet ( $params)
 Get a set of labelled radio buttons. More...
 
 getReadableName ()
 Get the internationalised name for this DBMS. More...
 
 getSchemaPath ( $db)
 Return a path to the DBMS-specific schema file, otherwise default to tables.sql. More...
 
 getTextBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled text box to configure a local variable. More...
 
 getUpdateKeysPath ( $db)
 Return a path to the DBMS-specific update key file, otherwise default to update-keys.sql. More...
 
 getVar ( $var, $default=null)
 Get a variable, taking local defaults into account. More...
 
 getWebUserBox ( $noCreateMsg=false)
 Get a standard web-user fieldset. More...
 
 insertUpdateKeys ()
 Insert update keys into table to prevent running unneded updates. More...
 
 needsUpgrade ()
 Determine whether an existing installation of MediaWiki is present in the configured administrative connection. More...
 
 outputHandler ( $string)
 
 populateInterwikiTable ()
 Common function for databases that don't understand the MySQLish syntax of interwiki.sql. More...
 
 setupSchemaVars ()
 Set appropriate schema variables in the current database connection. More...
 
 setVar ( $name, $value)
 Convenience alias for $this->parent->setVar() More...
 
 setVarsFromRequest ( $varNames)
 Convenience function to set variables based on form data. More...
 
 submitInstallUserBox ()
 Submit a standard install user fieldset. More...
 
 submitWebUserBox ()
 Submit the form from getWebUserBox(). More...
 

Public Attributes

 $webUserPrivs
 
- Public Attributes inherited from DatabaseInstaller
Database $db = null
 The database connection. More...
 
WebInstaller $parent
 The Installer object. More...
 

Static Public Attributes

static $minimumVersion = '9.00.1399'
 
- Static Public Attributes inherited from DatabaseInstaller
static string $minimumVersion
 Set by subclasses. More...
 

Protected Attributes

 $globalNames
 
 $internalDefaults
 
- Protected Attributes inherited from DatabaseInstaller
array $globalNames = []
 Array of MW configuration globals this class uses. More...
 
array $internalDefaults = []
 Internal variables for installation. More...
 

Static Protected Attributes

static $notMiniumumVerisonMessage = 'config-mssql-old'
 
- Static Protected Attributes inherited from DatabaseInstaller
static string $notMiniumumVerisonMessage
 Set by subclasses. More...
 

Private Member Functions

 catalogExists ( $catalogName)
 Try to see if a given fulltext catalog exists We assume we already have the appropriate database selected. More...
 
 databaseExists ( $dbName)
 Try to see if a given database exists. More...
 
 loginExists ( $user)
 Try to see if the login exists. More...
 
 schemaExists ( $schemaName)
 Try to see if a given schema exists We assume we already have the appropriate database selected. More...
 
 userExists ( $user)
 Try to see if the user account exists We assume we already have the appropriate database selected. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from DatabaseInstaller
static meetsMinimumRequirement ( $serverVersion)
 Whether the provided version meets the necessary requirements for this type. More...
 
- Static Protected Member Functions inherited from DatabaseInstaller
static checkExtension ( $name)
 Convenience function. More...
 

Detailed Description

Class for setting up the MediaWiki database using Microsoft SQL Server.

Since
1.23

Definition at line 34 of file MssqlInstaller.php.

Member Function Documentation

◆ canCreateAccounts()

MssqlInstaller::canCreateAccounts ( )

Return true if the install user can create accounts.

Returns
bool

Definition at line 260 of file MssqlInstaller.php.

References $res, as, captcha-old\count, databaseExists(), DatabaseInstaller\getConnection(), DatabaseInstaller\getVar(), and schemaExists().

Referenced by getSettingsForm(), and submitSettingsForm().

◆ catalogExists()

MssqlInstaller::catalogExists (   $catalogName)
private

Try to see if a given fulltext catalog exists We assume we already have the appropriate database selected.

Parameters
string$catalogNameCatalog name to check
Returns
bool

Definition at line 708 of file MssqlInstaller.php.

References $res.

Referenced by setupDatabase().

◆ createTables()

MssqlInstaller::createTables ( )

Create database tables from scratch.

Returns
Status

Reimplemented from DatabaseInstaller.

Definition at line 634 of file MssqlInstaller.php.

References DatabaseInstaller\getVar().

◆ databaseExists()

MssqlInstaller::databaseExists (   $dbName)
private

Try to see if a given database exists.

Parameters
string$dbNameDatabase name to check
Returns
bool

Definition at line 686 of file MssqlInstaller.php.

References $res.

Referenced by canCreateAccounts(), and setupDatabase().

◆ getConnectForm()

MssqlInstaller::getConnectForm ( )

◆ getGlobalDefaults()

MssqlInstaller::getGlobalDefaults ( )

Get a name=>value map of MW configuration globals for the default values.

Returns
array

Reimplemented from DatabaseInstaller.

Definition at line 652 of file MssqlInstaller.php.

◆ getLocalSettings()

MssqlInstaller::getLocalSettings ( )

Get the DBMS-specific options for LocalSettings.php generation.

Returns
string

Reimplemented from DatabaseInstaller.

Definition at line 727 of file MssqlInstaller.php.

References LocalSettingsGenerator\escapePhpString(), and DatabaseInstaller\getVar().

◆ getName()

MssqlInstaller::getName ( )
Returns
string

Reimplemented from DatabaseInstaller.

Definition at line 71 of file MssqlInstaller.php.

◆ getSchemaVars()

MssqlInstaller::getSchemaVars ( )

Get variables to substitute into tables.sql and the SQL patch files.

Returns
array

Reimplemented from DatabaseInstaller.

Definition at line 718 of file MssqlInstaller.php.

References DatabaseInstaller\getVar().

◆ getSettingsForm()

◆ isCompiled()

MssqlInstaller::isCompiled ( )
Returns
bool

Reimplemented from DatabaseInstaller.

Definition at line 78 of file MssqlInstaller.php.

References DatabaseInstaller\checkExtension().

◆ loginExists()

MssqlInstaller::loginExists (   $user)
private

Try to see if the login exists.

Parameters
string$userUsername to check
Returns
bool

Definition at line 665 of file MssqlInstaller.php.

References $res, and $user.

Referenced by setupUser().

◆ openConnection()

MssqlInstaller::openConnection ( )

◆ preInstall()

MssqlInstaller::preInstall ( )

Allow DB installers a chance to make last-minute changes before installation occurs.

This happens before setupDatabase() or createTables() is called, but long after the constructor. Helpful for things like modifying setup steps :)

Reimplemented from DatabaseInstaller.

Definition at line 478 of file MssqlInstaller.php.

◆ preUpgrade()

MssqlInstaller::preUpgrade ( )

Allow DB installers a chance to make checks before upgrade.

Reimplemented from DatabaseInstaller.

Definition at line 234 of file MssqlInstaller.php.

References $wgDBpassword, $wgDBuser, DatabaseInstaller\getConnection(), and DatabaseInstaller\getVar().

◆ schemaExists()

MssqlInstaller::schemaExists (   $schemaName)
private

Try to see if a given schema exists We assume we already have the appropriate database selected.

Parameters
string$schemaNameSchema name to check
Returns
bool

Definition at line 697 of file MssqlInstaller.php.

References $res.

Referenced by canCreateAccounts(), and setupDatabase().

◆ setupDatabase()

◆ setupUser()

◆ submitConnectForm()

MssqlInstaller::submitConnectForm ( )

Set variables based on the request array, assuming it was submitted via the form returned by getConnectForm().

Validate the connection settings by attempting to connect with them.

If this is called, $this->parent can be assumed to be a WebInstaller.

Returns
Status

Reimplemented from DatabaseInstaller.

Definition at line 143 of file MssqlInstaller.php.

References DatabaseInstaller\getConnection(), StatusValue\newGood(), DatabaseInstaller\setVar(), and DatabaseInstaller\setVarsFromRequest().

◆ submitSettingsForm()

◆ userExists()

MssqlInstaller::userExists (   $user)
private

Try to see if the user account exists We assume we already have the appropriate database selected.

Parameters
string$userUsername to check
Returns
bool

Definition at line 676 of file MssqlInstaller.php.

References $res, and $user.

Referenced by setupUser().

Member Data Documentation

◆ $globalNames

MssqlInstaller::$globalNames
protected
Initial value:
= [
'wgDBserver',
'wgDBname',
'wgDBuser',
'wgDBpassword',
'wgDBmwschema',
'wgDBprefix',
'wgDBWindowsAuthentication',
]

Definition at line 36 of file MssqlInstaller.php.

◆ $internalDefaults

MssqlInstaller::$internalDefaults
protected
Initial value:
= [
'_InstallUser' => 'sa',
'_InstallWindowsAuthentication' => 'sqlauth',
'_WebWindowsAuthentication' => 'sqlauth',
]

Definition at line 46 of file MssqlInstaller.php.

◆ $minimumVersion

MssqlInstaller::$minimumVersion = '9.00.1399'
static

Definition at line 54 of file MssqlInstaller.php.

◆ $notMiniumumVerisonMessage

MssqlInstaller::$notMiniumumVerisonMessage = 'config-mssql-old'
staticprotected

Definition at line 55 of file MssqlInstaller.php.

◆ $webUserPrivs

MssqlInstaller::$webUserPrivs
Initial value:
= [
'DELETE',
'INSERT',
'SELECT',
'UPDATE',
'EXECUTE',
]

Definition at line 60 of file MssqlInstaller.php.


The documentation for this class was generated from the following file: