SlideShare a Scribd company logo
1 of 28
Download to read offline
MySQL Sandbox
              •one (unix) host
              •many database servers
              •single or multiple
                  sandboxes
              •installs IN SECONDS
              •Free software (GPL)
                     http://mysqlsandbox.net

MySQL Sandbox is a tool that installs an additional MySQL server in a few seconds.
You can have more than one database servers in your host, all of them independent from each other. Installing a new server with
MySQL Sandbox is a matter of seconds. You can install either a single sandbox or a system including multiple ones.
It is free software, and it works on most every unix system.
1 host - many servers




                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                        5.0.83

                                            single




                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single




                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single




                                   single
                                             5.4.1
                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single

                         5.0.82
                         master


                5.0.82     5.0.82
                 slave      slave
                standard
               replication

                                   single
                                             5.4.1
                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                                                          5.1.35
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single                                5.4.1
                                                                                                   5.0.83

                         5.0.82                                                             group

                         master


                5.0.82     5.0.82
                 slave      slave
                standard
               replication

                                   single
                                             5.4.1
                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                                                          5.1.35
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single                                5.4.1
                                                                                                   5.0.83

                         5.0.82                                                             group

                         master
                                                                               5.1.34
                5.0.82     5.0.82
                 slave      slave                           5.1.34
                                                                                                 5.1.34
                standard
               replication                                   circular 5.1.34
                                   single
                                             5.4.1         replication
                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
1 host - many servers
                                                                                          5.1.35




                 ALL
                                                            5.1.35
                                        5.0.83
                                                            single
                                            single                                5.4.1
                                                                                                   5.0.83

                         5.0.82                                                             group




             INDEPENDENT
                         master
                                                                               5.1.34
                5.0.82     5.0.82
                 slave      slave                           5.1.34
                                                                                                 5.1.34
                standard
               replication                                   circular 5.1.34
                                   single
                                             5.4.1         replication
                                                                                                   HOST

When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test
database servers in your host. You want to be able to test in different conditions, possibly with different versions.
With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a
group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and
they will not interfere with each other.
Installation


            •as root
                #
cpan
MySQL::Sandbox




Installing MySQL Sandbox is easy. It is a Perl module. Getting it in your server is just a matter of typing one commend as root.
If you want, you can also install in the user space. The reference manual explains how to do it.
Creating a single
                            sandbox
           •as normal user
                #
make_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz




Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball.
This will expand the tarball and create a sandbox very fast.
If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax.
It is FAST!
Creating a single
                            sandbox
           •as normal user
                #
make_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz


           •if you have expanded tarballs already


Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball.
This will expand the tarball and create a sandbox very fast.
If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax.
It is FAST!
Creating a single
                            sandbox
           •as normal user
                #
make_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz


           •if you have expanded tarballs already
                #
make_sandbox
5.1.35


Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball.
This will expand the tarball and create a sandbox very fast.
If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax.
It is FAST!
Creating a single
                            sandbox
           •as normal user
                #
make_sandbox




        < 10 seconds!
                


/path/to/mysql‐5.1.35‐YOUROS.gz


        •       if you have expanded tarballs already
                #
make_sandbox
5.1.35


Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball.
This will expand the tarball and create a sandbox very fast.
If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax.
It is FAST!
Creating a replication
                    sandbox
            •as normal user
                #
make_replication_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz




Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely
complicated, but the chances of making mistakes are quite a lot.
Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how
fast it is!
Creating a replication
                    sandbox
            •as normal user
                #
make_replication_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz


            •if you have expanded tarballs already


Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely
complicated, but the chances of making mistakes are quite a lot.
Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how
fast it is!
Creating a replication
                    sandbox
            •as normal user
                #
make_replication_sandbox

                


/path/to/mysql‐5.1.35‐YOUROS.gz


            •if you have expanded tarballs already
                #
make_replication_sandbox
5.1.35


Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely
complicated, but the chances of making mistakes are quite a lot.
Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how
fast it is!
Creating a replication
                    sandbox
            •as normal user
                #
make_replication_sandbox




       < 20 seconds!
                


/path/to/mysql‐5.1.35‐YOUROS.gz


       •        if you have expanded tarballs already
                #
make_replication_sandbox
5.1.35


Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely
complicated, but the chances of making mistakes are quite a lot.
Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how
fast it is!
SHORTCUT - Creating
             and Using a sandbox




Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier.
You can create a sandbox and use it with a very short command.
You need to try it to believe it.
SHORTCUT - Creating
             and Using a sandbox


           •as normal user (requires version 3.0.04)




Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier.
You can create a sandbox and use it with a very short command.
You need to try it to believe it.
SHORTCUT - Creating
             and Using a sandbox


           •as normal user (requires version 3.0.04)
                #
sb
5.0.83




Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier.
You can create a sandbox and use it with a very short command.
You need to try it to believe it.
SHORTCUT - Creating
             and Using a sandbox


           •as normal user (requires version 3.0.04)
                #
sb
5.0.83


           < 5 seconds!
Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier.
You can create a sandbox and use it with a very short command.
You need to try it to believe it.
example
                $
make_sandbox
5.0.82

                [...]
                .
sandbox
server
started
                Your
sandbox
server
was
installed
in

                $SANDBOX_HOME/msb_5_0_82

                $
$SANDBOX_HOME/msb_5_0_82/use

                


‐e
"select
version()"
                +‐‐‐‐‐‐‐‐‐‐‐+
                |
version()
|
                +‐‐‐‐‐‐‐‐‐‐‐+
                |
5.0.82



|

                +‐‐‐‐‐‐‐‐‐‐‐+




Here's an example of a single sandbox. First you create it. MySQL Sandbox will show you what it's doing and ask for
confirmation. This will take a few seconds. Once the sandbox has been created, you can use it immediately. No need to
remember complicated options. The sandbox includes scripts to use it easily, as you see in the screen. Just say "use", and it will
invoke the mysql command line with all the necessary options, which you don't have to remember
example
                                         (shortcut)
                $
time
sb
5.0.82
‐e
"select
version()"
                [...]
                .
sandbox
server
started
                Your
sandbox
server
was
installed
in

                $SANDBOX_HOME/msb_5_0_82
                +‐‐‐‐‐‐‐‐‐‐‐+
                |
version()
|
                +‐‐‐‐‐‐‐‐‐‐‐+
                |
5.0.82



|

                +‐‐‐‐‐‐‐‐‐‐‐+

                real
 0m2.041s
                user
 0m0.290s
                sys

                   0m0.210s


The same two tasks that you have seen in the previous slide can be achieved at once with the new shortcut.
One single command that creates the sandbox and lets you use it.
This timing is in my laptop. Using a powerful server will be even faster.
example replication
                $
make_replication_sandbox
5.0.82

                [...]
                replication
directory
installed
on

                $SANDBOX_HOME/rsandbox_5_0_82

                $
$SANDBOX_HOME/rsandbox_5_8_82/m

                

‐e
"select
version()"

                +‐‐‐‐‐‐‐‐‐‐‐+
                |
version()
|
                +‐‐‐‐‐‐‐‐‐‐‐+
                |
5.0.82



|

                +‐‐‐‐‐‐‐‐‐‐‐+




Creating a replication system is similar. Just use the make_replication_sandbox script instead of make_sandbox, and the program
will take care of all the details.
Inside a replication sandbox you will have one sandbox for the master and one for each slave. No need to remember which is
which. The sandbox offers a shortcut script for each role. "m" is for master, "s1" for the first slave, and so on.
example replication
                                             (shortcut)
                $
time
sb
r5.0.82
‐e
"select
version()"
                [...]
                replication
directory
installed
in
$HOME/
                rsandbox_5_0_82
                +‐‐‐‐‐‐‐‐‐‐‐‐+
                |
version()

|
                +‐‐‐‐‐‐‐‐‐‐‐‐+
                |
5.0.82‐log
|

                +‐‐‐‐‐‐‐‐‐‐‐‐+

                real
 0m4.682s
                user
 0m0.795s
                sys

                   0m0.585s



You can use the shortcut script for the replication as well.
Here's an example of such call. You will invoke sb, followed by an "r" and the version number. The shortcut script will do
everything for you. Create a replication system and then invoke the master.
more control with
                          replication
                $
cd
$SANDBOX_HOME/rsandbox_5_8_82
                $
./use_all
"SELECT
@@server_id"
                #
master


                @@server_id
                1
                #
server:
1:

                @@server_id
                101
                #
server:
2:

                @@server_id
                102




For multiple sandboxes, you have additional scripts. There are scripts for starting, stopping, and cleaning up all the depending
sandboxes at once. And there is a script that lets you tun the same SQL statement in all the nodes. In this example, you see the
query "SELECT @@server_id" executed by the master and the slaves in sequence.
Self contained
              •All sandboxes are created inside
                   $SANDBOX_HOME
              •Use all at once
              •Great control



                      http://mysqlsandbox.net
Using MySQL Sandbox servers is safe and easy. Stopping and starting all the servers at once is a simple script call. Since all
sandboxes are under the same tree, it's also easy to keep track of storage.
There is much more that you can do. Check the MySQL Sandbox site for the reference manual and a detailed cookbook with
practical guidance.

More Related Content

More from Giuseppe Maxia

Dbdeployer, the universal installer
Dbdeployer, the universal installerDbdeployer, the universal installer
Dbdeployer, the universal installerGiuseppe Maxia
 
Test complex database systems in your laptop with dbdeployer
Test complex database systems in your laptop with dbdeployerTest complex database systems in your laptop with dbdeployer
Test complex database systems in your laptop with dbdeployerGiuseppe Maxia
 
A quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesA quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesGiuseppe Maxia
 
Synchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBSynchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBGiuseppe Maxia
 
Tungsten Replicator tutorial
Tungsten Replicator tutorialTungsten Replicator tutorial
Tungsten Replicator tutorialGiuseppe Maxia
 
Preventing multi master conflicts with tungsten
Preventing multi master conflicts with tungstenPreventing multi master conflicts with tungsten
Preventing multi master conflicts with tungstenGiuseppe Maxia
 
MySQL high availability power and usability
MySQL high availability power and usabilityMySQL high availability power and usability
MySQL high availability power and usabilityGiuseppe Maxia
 
Solving MySQL replication problems with Tungsten
Solving MySQL replication problems with TungstenSolving MySQL replication problems with Tungsten
Solving MySQL replication problems with TungstenGiuseppe Maxia
 
Mysql 5.5 and 5.6 replication
Mysql 5.5 and 5.6 replicationMysql 5.5 and 5.6 replication
Mysql 5.5 and 5.6 replicationGiuseppe Maxia
 
Lightning talks percona live mysql_2012
Lightning talks percona live mysql_2012Lightning talks percona live mysql_2012
Lightning talks percona live mysql_2012Giuseppe Maxia
 
Testing mysql creatively in a sandbox
Testing mysql creatively in a sandboxTesting mysql creatively in a sandbox
Testing mysql creatively in a sandboxGiuseppe Maxia
 
Building simple and complex clusters with tungsten replicator
Building simple and complex clusters with tungsten replicatorBuilding simple and complex clusters with tungsten replicator
Building simple and complex clusters with tungsten replicatorGiuseppe Maxia
 
Moving data for the masses
Moving data for the massesMoving data for the masses
Moving data for the massesGiuseppe Maxia
 

More from Giuseppe Maxia (20)

Test like a_boss
Test like a_bossTest like a_boss
Test like a_boss
 
Dbdeployer, the universal installer
Dbdeployer, the universal installerDbdeployer, the universal installer
Dbdeployer, the universal installer
 
Test complex database systems in your laptop with dbdeployer
Test complex database systems in your laptop with dbdeployerTest complex database systems in your laptop with dbdeployer
Test complex database systems in your laptop with dbdeployer
 
Dbdeployer
DbdeployerDbdeployer
Dbdeployer
 
Dbdeployer
DbdeployerDbdeployer
Dbdeployer
 
A quick tour of Mysql 8 roles
A quick tour of Mysql 8 rolesA quick tour of Mysql 8 roles
A quick tour of Mysql 8 roles
 
MySQL document_store
MySQL document_storeMySQL document_store
MySQL document_store
 
Replication skeptic
Replication skepticReplication skeptic
Replication skeptic
 
Synchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDBSynchronise your data between MySQL and MongoDB
Synchronise your data between MySQL and MongoDB
 
MySQL in your laptop
MySQL in your laptopMySQL in your laptop
MySQL in your laptop
 
Script it
Script itScript it
Script it
 
Tungsten Replicator tutorial
Tungsten Replicator tutorialTungsten Replicator tutorial
Tungsten Replicator tutorial
 
Preventing multi master conflicts with tungsten
Preventing multi master conflicts with tungstenPreventing multi master conflicts with tungsten
Preventing multi master conflicts with tungsten
 
MySQL high availability power and usability
MySQL high availability power and usabilityMySQL high availability power and usability
MySQL high availability power and usability
 
Solving MySQL replication problems with Tungsten
Solving MySQL replication problems with TungstenSolving MySQL replication problems with Tungsten
Solving MySQL replication problems with Tungsten
 
Mysql 5.5 and 5.6 replication
Mysql 5.5 and 5.6 replicationMysql 5.5 and 5.6 replication
Mysql 5.5 and 5.6 replication
 
Lightning talks percona live mysql_2012
Lightning talks percona live mysql_2012Lightning talks percona live mysql_2012
Lightning talks percona live mysql_2012
 
Testing mysql creatively in a sandbox
Testing mysql creatively in a sandboxTesting mysql creatively in a sandbox
Testing mysql creatively in a sandbox
 
Building simple and complex clusters with tungsten replicator
Building simple and complex clusters with tungsten replicatorBuilding simple and complex clusters with tungsten replicator
Building simple and complex clusters with tungsten replicator
 
Moving data for the masses
Moving data for the massesMoving data for the masses
Moving data for the masses
 

Recently uploaded

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Recently uploaded (20)

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

MySQL Sandbox quick demo

  • 1. MySQL Sandbox •one (unix) host •many database servers •single or multiple sandboxes •installs IN SECONDS •Free software (GPL) http://mysqlsandbox.net MySQL Sandbox is a tool that installs an additional MySQL server in a few seconds. You can have more than one database servers in your host, all of them independent from each other. Installing a new server with MySQL Sandbox is a matter of seconds. You can install either a single sandbox or a system including multiple ones. It is free software, and it works on most every unix system.
  • 2. 1 host - many servers HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 3. 1 host - many servers 5.0.83 single HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 4. 1 host - many servers 5.1.35 5.0.83 single single HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 5. 1 host - many servers 5.1.35 5.0.83 single single single 5.4.1 HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 6. 1 host - many servers 5.1.35 5.0.83 single single 5.0.82 master 5.0.82 5.0.82 slave slave standard replication single 5.4.1 HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 7. 1 host - many servers 5.1.35 5.1.35 5.0.83 single single 5.4.1 5.0.83 5.0.82 group master 5.0.82 5.0.82 slave slave standard replication single 5.4.1 HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 8. 1 host - many servers 5.1.35 5.1.35 5.0.83 single single 5.4.1 5.0.83 5.0.82 group master 5.1.34 5.0.82 5.0.82 slave slave 5.1.34 5.1.34 standard replication circular 5.1.34 single 5.4.1 replication HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 9. 1 host - many servers 5.1.35 ALL 5.1.35 5.0.83 single single 5.4.1 5.0.83 5.0.82 group INDEPENDENT master 5.1.34 5.0.82 5.0.82 slave slave 5.1.34 5.1.34 standard replication circular 5.1.34 single 5.4.1 replication HOST When you need to test enterprise software, the database is a core component. For this, it's important to be able to have test database servers in your host. You want to be able to test in different conditions, possibly with different versions. With MySQL Sandbox, it's easy to create single servers of different versions, or a replicated system with master and salves, or a group of servers with various versions, or a circular replication system. You can have all of them, one by one , or all at once, and they will not interfere with each other.
  • 10. Installation •as root #
cpan
MySQL::Sandbox Installing MySQL Sandbox is easy. It is a Perl module. Getting it in your server is just a matter of typing one commend as root. If you want, you can also install in the user space. The reference manual explains how to do it.
  • 11. Creating a single sandbox •as normal user #
make_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball. This will expand the tarball and create a sandbox very fast. If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax. It is FAST!
  • 12. Creating a single sandbox •as normal user #
make_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz •if you have expanded tarballs already Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball. This will expand the tarball and create a sandbox very fast. If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax. It is FAST!
  • 13. Creating a single sandbox •as normal user #
make_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz •if you have expanded tarballs already #
make_sandbox
5.1.35 Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball. This will expand the tarball and create a sandbox very fast. If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax. It is FAST!
  • 14. Creating a single sandbox •as normal user #
make_sandbox
 < 10 seconds! 


/path/to/mysql‐5.1.35‐YOUROS.gz • if you have expanded tarballs already #
make_sandbox
5.1.35 Let's make your first sandbox. It's as simple as saying "make_sandbox" and the name of a MySQL tarball. This will expand the tarball and create a sandbox very fast. If you have already expanded the tarball in a predefined directory, you can call "make_sandbox" with the simplified syntax. It is FAST!
  • 15. Creating a replication sandbox •as normal user #
make_replication_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely complicated, but the chances of making mistakes are quite a lot. Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how fast it is!
  • 16. Creating a replication sandbox •as normal user #
make_replication_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz •if you have expanded tarballs already Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely complicated, but the chances of making mistakes are quite a lot. Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how fast it is!
  • 17. Creating a replication sandbox •as normal user #
make_replication_sandbox
 


/path/to/mysql‐5.1.35‐YOUROS.gz •if you have expanded tarballs already #
make_replication_sandbox
5.1.35 Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely complicated, but the chances of making mistakes are quite a lot. Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how fast it is!
  • 18. Creating a replication sandbox •as normal user #
make_replication_sandbox
 < 20 seconds! 


/path/to/mysql‐5.1.35‐YOUROS.gz • if you have expanded tarballs already #
make_replication_sandbox
5.1.35 Creating a replication system is equally easy. If you have ever set up MySQL replication servers you know that it is not extremely complicated, but the chances of making mistakes are quite a lot. Using MySQL Sandbox, you can create a replication system as easoly as you make a single one. And you will be surprised at how fast it is!
  • 19. SHORTCUT - Creating and Using a sandbox Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier. You can create a sandbox and use it with a very short command. You need to try it to believe it.
  • 20. SHORTCUT - Creating and Using a sandbox •as normal user (requires version 3.0.04) Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier. You can create a sandbox and use it with a very short command. You need to try it to believe it.
  • 21. SHORTCUT - Creating and Using a sandbox •as normal user (requires version 3.0.04) #
sb
5.0.83 Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier. You can create a sandbox and use it with a very short command. You need to try it to believe it.
  • 22. SHORTCUT - Creating and Using a sandbox •as normal user (requires version 3.0.04) #
sb
5.0.83 < 5 seconds! Starting with MySQL Sandbox 3.0.04, there is also a shortcut script that can make your life much easier. You can create a sandbox and use it with a very short command. You need to try it to believe it.
  • 23. example $
make_sandbox
5.0.82
 [...] .
sandbox
server
started Your
sandbox
server
was
installed
in
 $SANDBOX_HOME/msb_5_0_82 $
$SANDBOX_HOME/msb_5_0_82/use
 


‐e
"select
version()" +‐‐‐‐‐‐‐‐‐‐‐+ |
version()
| +‐‐‐‐‐‐‐‐‐‐‐+ |
5.0.82



|
 +‐‐‐‐‐‐‐‐‐‐‐+ Here's an example of a single sandbox. First you create it. MySQL Sandbox will show you what it's doing and ask for confirmation. This will take a few seconds. Once the sandbox has been created, you can use it immediately. No need to remember complicated options. The sandbox includes scripts to use it easily, as you see in the screen. Just say "use", and it will invoke the mysql command line with all the necessary options, which you don't have to remember
  • 24. example (shortcut) $
time
sb
5.0.82
‐e
"select
version()" [...] .
sandbox
server
started Your
sandbox
server
was
installed
in
 $SANDBOX_HOME/msb_5_0_82 +‐‐‐‐‐‐‐‐‐‐‐+ |
version()
| +‐‐‐‐‐‐‐‐‐‐‐+ |
5.0.82



|
 +‐‐‐‐‐‐‐‐‐‐‐+ real
 0m2.041s user
 0m0.290s sys
 0m0.210s The same two tasks that you have seen in the previous slide can be achieved at once with the new shortcut. One single command that creates the sandbox and lets you use it. This timing is in my laptop. Using a powerful server will be even faster.
  • 25. example replication $
make_replication_sandbox
5.0.82
 [...] replication
directory
installed
on
 $SANDBOX_HOME/rsandbox_5_0_82 $
$SANDBOX_HOME/rsandbox_5_8_82/m
 

‐e
"select
version()" +‐‐‐‐‐‐‐‐‐‐‐+ |
version()
| +‐‐‐‐‐‐‐‐‐‐‐+ |
5.0.82



|
 +‐‐‐‐‐‐‐‐‐‐‐+ Creating a replication system is similar. Just use the make_replication_sandbox script instead of make_sandbox, and the program will take care of all the details. Inside a replication sandbox you will have one sandbox for the master and one for each slave. No need to remember which is which. The sandbox offers a shortcut script for each role. "m" is for master, "s1" for the first slave, and so on.
  • 26. example replication (shortcut) $
time
sb
r5.0.82
‐e
"select
version()" [...] replication
directory
installed
in
$HOME/ rsandbox_5_0_82 +‐‐‐‐‐‐‐‐‐‐‐‐+ |
version()

| +‐‐‐‐‐‐‐‐‐‐‐‐+ |
5.0.82‐log
|
 +‐‐‐‐‐‐‐‐‐‐‐‐+ real
 0m4.682s user
 0m0.795s sys
 0m0.585s You can use the shortcut script for the replication as well. Here's an example of such call. You will invoke sb, followed by an "r" and the version number. The shortcut script will do everything for you. Create a replication system and then invoke the master.
  • 27. more control with replication $
cd
$SANDBOX_HOME/rsandbox_5_8_82 $
./use_all
"SELECT
@@server_id" #
master

 @@server_id 1 #
server:
1:
 @@server_id 101 #
server:
2:
 @@server_id 102 For multiple sandboxes, you have additional scripts. There are scripts for starting, stopping, and cleaning up all the depending sandboxes at once. And there is a script that lets you tun the same SQL statement in all the nodes. In this example, you see the query "SELECT @@server_id" executed by the master and the slaves in sequence.
  • 28. Self contained •All sandboxes are created inside $SANDBOX_HOME •Use all at once •Great control http://mysqlsandbox.net Using MySQL Sandbox servers is safe and easy. Stopping and starting all the servers at once is a simple script call. Since all sandboxes are under the same tree, it's also easy to keep track of storage. There is much more that you can do. Check the MySQL Sandbox site for the reference manual and a detailed cookbook with practical guidance.