maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #01240
Re: Updated (by Psergey): Windows installer for MariaDB (55)
Hi Peter,
On Wed, Oct 14, 2009 at 11:56:50PM +0200, Peter Laursen wrote:
> Important addition. It will be necessary to let user specify both 'basedir'
> and 'datadir' (due to problems with Windows UAC (user account control) on
> Windows versions from Vista and up.
>
> MySQL uses defaults \program files\... for basedir and 'AppData'\.. for
> datadir. Datadir cannot be a subfolder to basedir if basedir is in \Program
> Files.. and UAC is on on Vista+. As long as program runs as a service it
> will work but should server occasionally be started with user privileges any
> writable file (=data files) will be copied to users \virtualstore folder and
> this copy will be used. So this will result in two different copies of the
> database files written to .. one for 'system' and another for 'user'. This
> would also apply to a very large InnoDB/XtraDB tablespace - update a single
> bit and the complete file is copied by Windows to \virtualstore.
>
Thanks, noted.
> On Wed, Oct 14, 2009 at 23:35, <worklog-noreply@xxxxxxxxxxxx> wrote:
>
> > -----------------------------------------------------------------------
> > WORKLOG TASK
> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> > TASK...........: Windows installer for MariaDB
> > CREATION DATE..: Wed, 14 Oct 2009, 00:07
> > SUPERVISOR.....: Monty
> > IMPLEMENTOR....:
> > COPIES TO......:
> > CATEGORY.......: Server-RawIdeaBin
> > TASK ID........: 55 (http://askmonty.org/worklog/?tid=55)
> > VERSION........: Server-9.x
> > STATUS.........: Un-Assigned
> > PRIORITY.......: 60
> > WORKED HOURS...: 0
> > ESTIMATE.......: 0 (hours remain)
> > ORIG. ESTIMATE.: 0
> >
> > PROGRESS NOTES:
> >
> > -=-=(Psergey - Thu, 15 Oct 2009, 00:35)=-=-
> > High-Level Specification modified.
> > --- /tmp/wklog.55.old.27287 2009-10-15 00:35:54.000000000 +0300
> > +++ /tmp/wklog.55.new.27287 2009-10-15 00:35:54.000000000 +0300
> > @@ -4,15 +4,33 @@
> > --------------------------------
> > From the user point of view:
> >
> > -1.1 Step 1: simplest installer
> > -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +1.1 Step 1: simple installer
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > An installer package that
> > - Copies files on installation
> > - Registers mysqld a service
> > -- Checks if installation directory, MySQL's port, or named pipe are
> > +- Prompts the user for "essential" configuration options. Preliminary list
> > + of "essential" options:
> > + * root password
> > + * default character set
> > + * <TODO come up with the final list. The criteria for inclusion are:
> > + 1. ask for things that are essential to have a working setup as soon
> > as
> > + the installation is complete
> > + 2. ask for things without answers for which the newbies can get into
> > + trouble.
> > +- Checks if the target installation directory, TCP port, or named pipe are
> > busy. If they are, it asks to remove the previous installation first
> > and aborts.
> > -- Uninstall procedure (TODO: should that remove the datadir or leave it?)
> > +- Adds start menu items
> > + - to start the server manually (with --console)
> > + - to start mysql client
> > + - to edit the my.cnf file.
> > +- Registers MariaDB as installed, sets up uninstaller.
> > + (TODO: should the uninstaller the datadir or leave it? (or ask the
> > user?))
> > +
> > +- Creates installation log, and in case of any failures presents the log
> > to
> > + the user and requests to file it as a bug (How far we should go here
> > depends
> > + on how complex and error-prone the final installation procedure will
> > be).
> >
> > 1.2 Step 2: upgrades from MySQL
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > @@ -28,6 +46,7 @@
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > - Installer should include configuration wizard that's similar to what
> > MySQL
> > installer does.
> > + TODO come up with options
> >
> > 2. Installer wishlist (developer POV)
> > -------------------------------------
> > @@ -45,3 +64,8 @@
> > installation succeeded, then start the server, run some commands, then
> > uninstall. Any ways to achieve that?)
> >
> > +3. Other notes
> > +--------------
> > +* MySQL's logo is the seal (see e.g. here:
> > https://code.launchpad.net/maria),
> > + Bo Thorsen has the latest revision of the picture in various formats.
> > +
> >
> > -=-=(Psergey - Wed, 14 Oct 2009, 00:46)=-=-
> > High-Level Specification modified.
> > --- /tmp/wklog.55.old.29984 2009-10-14 00:46:50.000000000 +0300
> > +++ /tmp/wklog.55.new.29984 2009-10-14 00:46:50.000000000 +0300
> > @@ -29,9 +29,6 @@
> > - Installer should include configuration wizard that's similar to what
> > MySQL
> > installer does.
> >
> > -1.1 Step 1
> > -~~~~~~~~~~
> > -
> > 2. Installer wishlist (developer POV)
> > -------------------------------------
> > * Some "installshield-like" tool that's easy to use (suggestion by Webyog:
> >
> > -=-=(Psergey - Wed, 14 Oct 2009, 00:07)=-=-
> > High-Level Specification modified.
> > --- /tmp/wklog.55.old.28205 2009-10-14 00:07:28.000000000 +0300
> > +++ /tmp/wklog.55.new.28205 2009-10-14 00:07:28.000000000 +0300
> > @@ -1 +1,50 @@
> > +Not a spec so far but a list of points to consider:
> > +
> > +1. Installer wishlist (user POV)
> > +--------------------------------
> > +From the user point of view:
> > +
> > +1.1 Step 1: simplest installer
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +An installer package that
> > +- Copies files on installation
> > +- Registers mysqld a service
> > +- Checks if installation directory, MySQL's port, or named pipe are
> > + busy. If they are, it asks to remove the previous installation first
> > + and aborts.
> > +- Uninstall procedure (TODO: should that remove the datadir or leave it?)
> > +
> > +1.2 Step 2: upgrades from MySQL
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +- Same as above but with handling of the case where MySQL has been already
> > + installed:
> > + - offer to replace MySQL.
> > + - upgrade the data directory (todo we should sort out if anything/what
> > is
> > + needed for this).
> > + - Uninstall MySQL
> > + - Install MariaDB.
> > +
> > +1.3 Step 3: Configuration wizard
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +- Installer should include configuration wizard that's similar to what
> > MySQL
> > + installer does.
> > +
> > +1.1 Step 1
> > +~~~~~~~~~~
> > +
> > +2. Installer wishlist (developer POV)
> > +-------------------------------------
> > +* Some "installshield-like" tool that's easy to use (suggestion by Webyog:
> > + NSIS)
> > +* Installation procedure source should reside in MariaDB source repository
> > +* Installation procedure source file is better to be in human-readable
> > text
> > + format.
> > +* It should be possible to automate creation of the installer package, in
> > a way
> > + that can be run from buildbot (e.g. the installer package build process
> > + should print messages to its stdout)
> > +
> > +* Any suggestions on how can one automatically test the installation
> > package?
> > + (for example, we'll want to start the installer, install, check that
> > + installation succeeded, then start the server, run some commands, then
> > + uninstall. Any ways to achieve that?)
> >
> >
> >
> >
> > DESCRIPTION:
> >
> > We need Windows Installer package for MariaDB.
> >
> >
> > HIGH-LEVEL SPECIFICATION:
> >
> >
> >
> > Not a spec so far but a list of points to consider:
> >
> > 1. Installer wishlist (user POV)
> > --------------------------------
> > >From the user point of view:
> >
> > 1.1 Step 1: simple installer
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > An installer package that
> > - Copies files on installation
> > - Registers mysqld a service
> > - Prompts the user for "essential" configuration options. Preliminary list
> > of "essential" options:
> > * root password
> > * default character set
> > * <TODO come up with the final list. The criteria for inclusion are:
> > 1. ask for things that are essential to have a working setup as soon as
> > the installation is complete
> > 2. ask for things without answers for which the newbies can get into
> > trouble.
> > - Checks if the target installation directory, TCP port, or named pipe are
> > busy. If they are, it asks to remove the previous installation first
> > and aborts.
> > - Adds start menu items
> > - to start the server manually (with --console)
> > - to start mysql client
> > - to edit the my.cnf file.
> > - Registers MariaDB as installed, sets up uninstaller.
> > (TODO: should the uninstaller the datadir or leave it? (or ask the user?))
> >
> > - Creates installation log, and in case of any failures presents the log to
> > the user and requests to file it as a bug (How far we should go here
> > depends
> > on how complex and error-prone the final installation procedure will be).
> >
> > 1.2 Step 2: upgrades from MySQL
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > - Same as above but with handling of the case where MySQL has been already
> > installed:
> > - offer to replace MySQL.
> > - upgrade the data directory (todo we should sort out if anything/what is
> > needed for this).
> > - Uninstall MySQL
> > - Install MariaDB.
> >
> > 1.3 Step 3: Configuration wizard
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > - Installer should include configuration wizard that's similar to what
> > MySQL
> > installer does.
> > TODO come up with options
> >
> > 2. Installer wishlist (developer POV)
> > -------------------------------------
> > * Some "installshield-like" tool that's easy to use (suggestion by Webyog:
> > NSIS)
> > * Installation procedure source should reside in MariaDB source repository
> > * Installation procedure source file is better to be in human-readable text
> > format.
> > * It should be possible to automate creation of the installer package, in a
> > way
> > that can be run from buildbot (e.g. the installer package build process
> > should print messages to its stdout)
> >
> > * Any suggestions on how can one automatically test the installation
> > package?
> > (for example, we'll want to start the installer, install, check that
> > installation succeeded, then start the server, run some commands, then
> > uninstall. Any ways to achieve that?)
> >
> > 3. Other notes
> > --------------
> > * MySQL's logo is the seal (see e.g. here:
> > https://code.launchpad.net/maria),
> > Bo Thorsen has the latest revision of the picture in various formats.
> >
> >
> > ESTIMATED WORK TIME
> >
> > ESTIMATED COMPLETION DATE
> > -----------------------------------------------------------------------
> > WorkLog (v3.5.9)
> >
> >
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~maria-developers
> > Post to : maria-developers@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~maria-developers
> > More help : https://help.launchpad.net/ListHelp
> >
--
BR
Sergey
--
Sergey Petrunia, Software Developer
Monty Program AB, http://askmonty.org
Blog: http://s.petrunia.net/blog
References