SlideShare a Scribd company logo
MySQL 101
 MySQL (play /maɪ ˌɛskjuːˈɛl/ "My S-Q-L",
[3] officially, but also incorrectly called /ma ɪ
  ˈsiːkwəl/ "My Sequel") is the world's most
    used[4] relational database management
   system (RDBMS)[5] that runs as a server
 providing multi-user access to a number of
     databases. The SQL phrase stands for
    Structured Query Language.[7] – Wikipedia
                                                  1
 Http://slideshare.net/davestokes/presentations
Agenda
➔   Installation
➔   Starting MySQL
➔   Stopping MySQL
➔   Connecting to MySQL
➔   Loading data
➔   Looking at data
➔   Backup
➔   Login/Authentication
➔   Where to go from here
➔   Suggestions
➔   Questions and Answers
David.Stokes@Oracle.com   @stoker   2
Installation
   MySQL is available for most Operating
    Systems
   Binaries, RPMS and DEBs available
   Windows
   Source Code


   http://dev.mysql.com/downloads/ Is what I
    recommend

http://dev.mysql.com/doc/refman/5.5/en/getting-mysql.html   3
Packages
  sudo apt-get install mysql5
  rpm -Uhv mysql5

     May have slightly different names,
     may have client utilities separate



http://dev.mysql.com/doc/refman/5.5/en/linux-installation.html   4
Binaries
shell> groupadd mysql
shell> useradd -r -g mysql mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
# Next command is optional
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

                                                                 5
http://dev.mysql.com/doc/refman/5.5/en/linux-installation.html
Configuration Files
  shell> cp support-files/my-medium.cnf /etc/my.cnf




      The configuration files have not aged well. They were
       written long ago. Please read through the choices to
       find one that best matches your system.
      MySQL will use built-it defaults, almost guaranteed not
       to be optimal for your environment if no my.cnf is
       present
http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html   6
Starting MySQL
shell> bin/mysqld_safe --user=mysql &

 This command is what starts your MySQL server. It runs a
wrapper script as user mysql in the background. You might also
see this wrapper wrapped


/etc/init.d/mysql start             or service mysql start




http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html   7
mysqld
   What is that wrapper running? The mysqld
    binary



   /usr/local/mysql/bin/mysqld –user=mysql

    (And other options from /etc/mysql/my.cnf)


http://dev.mysql.com/doc/refman/5.5/en/mysqld.html   8
/etc/mysql/my.cnf
    Options for your
                                   [client]
                                  port=3306

    MySQL Server                   [mysql]
                                   default-character-set=latin1
   Please use as CLI              [mysqld]
                                   # The TCP/IP Port the MySQL Server will listen on
    options are not good           port=3306


    for long term sanity!          #Path to installation directory. All paths are usually resolved
                                   relative to this.
                                   basedir="C:/Program Files/MySQL/MySQL Server 5.5/"
   Use your favorite              #Path to the database root
    change control                 datadir="C:/Documents and Settings/All Users/Application
                                   Data/MySQL/MySQL Server 5.5/Data/"

    program to track               # The default character set that will be used when a new
                                   schema or table is
    changes                        # created and no character set is defined
                                   character-set-server=latin1

                                   # The default storage engine that will be used when create new
                                   tables when
                                   default-storage-engine=INNODB



http://dev.mysql.com/doc/refman/5.5/en/option-files.html                              9
Configuration file has
              sections for the various
                 MySQL Programs

[client]
                                         Settings for client programs
port=3306

[mysql]                                                 General settings
default-character-set=latin1

[mysqld]                                                          Server
                                                                  settings
# The TCP/IP Port the MySQL Server will listen on
port=3306

#Path to installation directory. All paths are usually resolved
relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.5/"

http://dev.mysql.com/doc/refman/5.5/en/server-options.html   10
STOP!!!!!!
      service mysql stop
      /etc/init.d/mysql stop

       mysqladmin -u root shutdown




http://dev.mysql.com/doc/refman/5.5/en/mysqladmin.html   11
Connecting
   shell> mysql db_name

   shell> mysql --user=user_name
   --password=your_password db_name

   mysql db_name < script.sql > output.tab

Use the mysql client program to connect to the server




 http://dev.mysql.com/doc/refman/5.5/en/mysql.html   12
Connect to Another Host

        shell> mysql –host=host db_name
        shell> mysql -h host db_name




  These two commands are equivalent




http://dev.mysql.com/doc/refman/5.5/en/mysql-command-options.html   13
Connected



            14
s (stats)




http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html   15
SHOW DATABASES
           terminate with ; or g


                               ;                                  g


http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html   16
q
  Use q to exit the mysql client




http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html   17
Loading Data
          Example databases
           World
           Sakila
           Download from http://dev.mysql.com/doc/index-other.html
           shell> mysql
           mysql> create database worldg
           mysql> use worldg
           mysql> source world_innodb.sql




http://dev.mysql.com/doc/index-other.html                    18
Looking At Data
 mysql> show tables;
 mysql> select * from City;
 mysql> SELECT Name, CountryCode
 --> FROM City
 → WHERE Population > 10000000;




                                   19
Backup
          Physical versus logical
           Many options, many tools
           Restoration from backup needs to be tested



          shell> mysqldump --all-databases > dump.sql
          shell> mysqldump --databases db1 db2 db3 >
           dump.sql
           (and to restore)
          shell> mysql < dump.sql

http://dev.mysql.com/doc/refman/5.5/en/backup-and-recovery.html 20
Login/Authentication
       MySQL authentication is a little primitive
       The mysql database has tables for login
        information
       Easy to get confused

       Use a tool like MySQL Workbench
       Be stingy with permissions
       Read chapter 6 of the MySQL manual



http://dev.mysql.com/doc/refman/5.5/en/grant-table-structure.html   21
mysql.user table
       Host
       User
       Password
       Privileges
       Connection constraints (ssl, time, # connections)
       The server will first check Host address first, then
        user and password.
       Joe @ foo.net can have separate privs than Joe @
        127.0.0.1 and % @ foo.net can trump Joe @
        foo.net

http://dev.mysql.com/doc/refman/5.5/en/grant-table-structure.html   22
Workbench
      Administrative View




http://dev.mysql.com/doc/refman/5.5/en/workbench.html   23
You can use the CLI but ...



                                                                          Yes, you can type in the
mysql> select * from user where User='joe' limit 1G
*************************** 1. row ***************************
              Host: %
              User: joe


                                                                          settings for a new account
           Password:
        Select_priv: N
        Insert_priv: N
        Update_priv: N


                                                                          by hand but it is easy to
        Delete_priv: N
        Create_priv: N
          Drop_priv: N
        Reload_priv: N


                                                                          fat finger one of the thirty
       Shutdown_priv: N
       Process_priv: N
          File_priv: N
         Grant_priv: N


                                                                          privs.
     References_priv: N
         Index_priv: N
         Alter_priv: N
       Show_db_priv: N
         Super_priv: N
 Create_tmp_table_priv: N
    Lock_tables_priv: N
       Execute_priv: N
     Repl_slave_priv: N
    Repl_client_priv: N
    Create_view_priv: N
      Show_view_priv: N
                                                                          Other tools have similar
  Create_routine_priv: N
   Alter_routine_priv: N
    Create_user_priv: N
         Event_priv: N
                                                                          features and you should
       Trigger_priv: N
Create_tablespace_priv: N
           ssl_type:
         ssl_cipher:
                                                                          use them to avoid dumb
        x509_issuer:
       x509_subject:
       max_questions: 0
        max_updates: 0
                                                                          errors.
     max_connections: 0
  max_user_connections: 0
            plugin:
 authentication_string: NULL




                                                                                               24
Where To Go From Here

       Training
           Classes
             Mysql.com/training
             Local user groups or colleges
           Webinars
           Conferences
             MySQL Connect/Oracle Open World
             MySQL Innovation Day (Webcast)
             SELF
           Planet.MySQL.Com
           Forums.MySQl.Com



                                                25
Suggestions
   MySQL
    Administrator's Bible –
    Sheeri Cabral




                              26
Also Suggested
High Performance MySQL- Schwartz, Zaitsev, and
Tkachenko

3rd Edition!!!




                                        27
A New Series
Effective MySQL Backup and Recovery, Effective
MySQL Optimizing Statements, Ronald Bradford




                                         28
MySQL Certification
Aging but still
the Certification
Guide




                    29
Questions/Answers




David.Stokes@Oracle.com   @stoker   30

More Related Content

What's hot

My sql monitoring cu沙龙
My sql monitoring cu沙龙My sql monitoring cu沙龙
My sql monitoring cu沙龙colderboy17
 
MariaDB for developers
MariaDB for developersMariaDB for developers
MariaDB for developers
Colin Charles
 
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
M Malai
 
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL DevroomFlame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Valeriy Kravchuk
 
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB DevroomMore on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
Valeriy Kravchuk
 
Database Connection With Mysql
Database Connection With MysqlDatabase Connection With Mysql
Database Connection With MysqlHarit Kothari
 
More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)
Valeriy Kravchuk
 
2016 03 15_biological_databases_part4
2016 03 15_biological_databases_part42016 03 15_biological_databases_part4
2016 03 15_biological_databases_part4
Prof. Wim Van Criekinge
 
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and NagiosNagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios
 
Introduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB ClusterIntroduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB Cluster
I Goo Lee
 
Top Node.js Metrics to Watch
Top Node.js Metrics to WatchTop Node.js Metrics to Watch
Top Node.js Metrics to Watch
Sematext Group, Inc.
 
Ansible loves Python, Python Philadelphia meetup
Ansible loves Python, Python Philadelphia meetupAnsible loves Python, Python Philadelphia meetup
Ansible loves Python, Python Philadelphia meetup
Greg DeKoenigsberg
 
MySQL PHP native driver : Advanced Functions / PHP forum Paris 2013
 MySQL PHP native driver  : Advanced Functions / PHP forum Paris 2013   MySQL PHP native driver  : Advanced Functions / PHP forum Paris 2013
MySQL PHP native driver : Advanced Functions / PHP forum Paris 2013
Serge Frezefond
 
New features in Performance Schema 5.7 in action
New features in Performance Schema 5.7 in actionNew features in Performance Schema 5.7 in action
New features in Performance Schema 5.7 in action
Sveta Smirnova
 
Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalability
Wim Godden
 
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Valeriy Kravchuk
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014
FromDual GmbH
 
Puppet
PuppetPuppet
Puppet
csrocks
 
Architecting cloud
Architecting cloudArchitecting cloud
Architecting cloud
Tahsin Hasan
 
eZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisitedeZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisited
Bertrand Dunogier
 

What's hot (20)

My sql monitoring cu沙龙
My sql monitoring cu沙龙My sql monitoring cu沙龙
My sql monitoring cu沙龙
 
MariaDB for developers
MariaDB for developersMariaDB for developers
MariaDB for developers
 
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
Ansible is Our Wishbone(Automate DBA Tasks With Ansible)
 
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL DevroomFlame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
Flame Graphs for MySQL DBAs - FOSDEM 2022 MySQL Devroom
 
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB DevroomMore on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
More on bpftrace for MariaDB DBAs and Developers - FOSDEM 2022 MariaDB Devroom
 
Database Connection With Mysql
Database Connection With MysqlDatabase Connection With Mysql
Database Connection With Mysql
 
More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)More on gdb for my sql db as (fosdem 2016)
More on gdb for my sql db as (fosdem 2016)
 
2016 03 15_biological_databases_part4
2016 03 15_biological_databases_part42016 03 15_biological_databases_part4
2016 03 15_biological_databases_part4
 
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and NagiosNagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
 
Introduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB ClusterIntroduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB Cluster
 
Top Node.js Metrics to Watch
Top Node.js Metrics to WatchTop Node.js Metrics to Watch
Top Node.js Metrics to Watch
 
Ansible loves Python, Python Philadelphia meetup
Ansible loves Python, Python Philadelphia meetupAnsible loves Python, Python Philadelphia meetup
Ansible loves Python, Python Philadelphia meetup
 
MySQL PHP native driver : Advanced Functions / PHP forum Paris 2013
 MySQL PHP native driver  : Advanced Functions / PHP forum Paris 2013   MySQL PHP native driver  : Advanced Functions / PHP forum Paris 2013
MySQL PHP native driver : Advanced Functions / PHP forum Paris 2013
 
New features in Performance Schema 5.7 in action
New features in Performance Schema 5.7 in actionNew features in Performance Schema 5.7 in action
New features in Performance Schema 5.7 in action
 
Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalability
 
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021Linux  /proc filesystem for MySQL DBAs - FOSDEM 2021
Linux /proc filesystem for MySQL DBAs - FOSDEM 2021
 
MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014MySQL Indexierung CeBIT 2014
MySQL Indexierung CeBIT 2014
 
Puppet
PuppetPuppet
Puppet
 
Architecting cloud
Architecting cloudArchitecting cloud
Architecting cloud
 
eZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisitedeZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisited
 

Viewers also liked

MySQL on AWS 101
MySQL on AWS 101MySQL on AWS 101
MySQL on AWS 101
Anders Karlsson
 
MySQL - Intro to Database
MySQL - Intro to DatabaseMySQL - Intro to Database
MySQL - Intro to Database
Chester Chin
 
Basis Data - Pengenalan DML dan DDL
Basis Data - Pengenalan DML dan DDLBasis Data - Pengenalan DML dan DDL
Basis Data - Pengenalan DML dan DDL
Walid Umar
 
MySQL Transactions
MySQL TransactionsMySQL Transactions
MySQL Transactions
Reggie Niccolo Santos
 
MySQL Database System Hiep Dinh
MySQL Database System Hiep DinhMySQL Database System Hiep Dinh
MySQL Database System Hiep Dinhwebhostingguy
 
6 3 tier architecture php
6 3 tier architecture php6 3 tier architecture php
6 3 tier architecture phpcefour
 
MySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 TipsMySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 Tips
OSSCube
 
MySQL Introduction
MySQL IntroductionMySQL Introduction
MySQL Introduction
mysql content
 
Data Visualization with Tableau - by Knowledgebee Trainings
Data Visualization with Tableau - by Knowledgebee TrainingsData Visualization with Tableau - by Knowledgebee Trainings
Data Visualization with Tableau - by Knowledgebee Trainings
Ramesh Pabba - seeking new projects
 
MySQL
MySQLMySQL
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQL
Giuseppe Maxia
 
MySQL Atchitecture and Concepts
MySQL Atchitecture and ConceptsMySQL Atchitecture and Concepts
MySQL Atchitecture and Concepts
Tuyen Vuong
 
Introduction to Mysql
Introduction to MysqlIntroduction to Mysql
Introduction to Mysql
Tushar Chauhan
 
Learning Tableau - Data, Graphs, Filters, Dashboards and Advanced features
Learning Tableau -  Data, Graphs, Filters, Dashboards and Advanced featuresLearning Tableau -  Data, Graphs, Filters, Dashboards and Advanced features
Learning Tableau - Data, Graphs, Filters, Dashboards and Advanced features
Venkata Reddy Konasani
 
CBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL PresentationCBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL Presentation
Guru Ji
 
Introduction Mysql
Introduction Mysql Introduction Mysql
Introduction Mysql
Gerben Menschaert
 

Viewers also liked (20)

MySQL on AWS 101
MySQL on AWS 101MySQL on AWS 101
MySQL on AWS 101
 
MySQL - Intro to Database
MySQL - Intro to DatabaseMySQL - Intro to Database
MySQL - Intro to Database
 
Basis Data - Pengenalan DML dan DDL
Basis Data - Pengenalan DML dan DDLBasis Data - Pengenalan DML dan DDL
Basis Data - Pengenalan DML dan DDL
 
MySQL Transactions
MySQL TransactionsMySQL Transactions
MySQL Transactions
 
MySQL Database System Hiep Dinh
MySQL Database System Hiep DinhMySQL Database System Hiep Dinh
MySQL Database System Hiep Dinh
 
6 3 tier architecture php
6 3 tier architecture php6 3 tier architecture php
6 3 tier architecture php
 
MySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 TipsMySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 Tips
 
MySQL Tuning
MySQL TuningMySQL Tuning
MySQL Tuning
 
MySQL Introduction
MySQL IntroductionMySQL Introduction
MySQL Introduction
 
Mysql ppt
Mysql pptMysql ppt
Mysql ppt
 
Data Visualization with Tableau - by Knowledgebee Trainings
Data Visualization with Tableau - by Knowledgebee TrainingsData Visualization with Tableau - by Knowledgebee Trainings
Data Visualization with Tableau - by Knowledgebee Trainings
 
MYSQL.ppt
MYSQL.pptMYSQL.ppt
MYSQL.ppt
 
MySQL
MySQLMySQL
MySQL
 
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQL
 
MySQL Atchitecture and Concepts
MySQL Atchitecture and ConceptsMySQL Atchitecture and Concepts
MySQL Atchitecture and Concepts
 
Introduction to Mysql
Introduction to MysqlIntroduction to Mysql
Introduction to Mysql
 
Learning Tableau - Data, Graphs, Filters, Dashboards and Advanced features
Learning Tableau -  Data, Graphs, Filters, Dashboards and Advanced featuresLearning Tableau -  Data, Graphs, Filters, Dashboards and Advanced features
Learning Tableau - Data, Graphs, Filters, Dashboards and Advanced features
 
CBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL PresentationCBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL Presentation
 
MySql slides (ppt)
MySql slides (ppt)MySql slides (ppt)
MySql slides (ppt)
 
Introduction Mysql
Introduction Mysql Introduction Mysql
Introduction Mysql
 

Similar to My SQL 101

Mysql
Mysql Mysql
Mysql
Mindtree
 
Mysql wp cluster_quickstart_windows
Mysql wp cluster_quickstart_windowsMysql wp cluster_quickstart_windows
Mysql wp cluster_quickstart_windowsRogério Rocha
 
Get mysql clusterrunning-windows
Get mysql clusterrunning-windowsGet mysql clusterrunning-windows
Get mysql clusterrunning-windows
JoeSg
 
MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017
Dave Stokes
 
Multiple instances on linux
Multiple instances on linuxMultiple instances on linux
Multiple instances on linux
Vasudeva Rao
 
MySQL Utilities -- PyTexas 2015
MySQL Utilities -- PyTexas 2015MySQL Utilities -- PyTexas 2015
MySQL Utilities -- PyTexas 2015
Dave Stokes
 
MySQL database replication
MySQL database replicationMySQL database replication
MySQL database replication
PoguttuezhiniVP
 
MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAs
Mark Leith
 
MariaDB, MySQL and Ansible: automating database infrastructures
MariaDB, MySQL and Ansible: automating database infrastructuresMariaDB, MySQL and Ansible: automating database infrastructures
MariaDB, MySQL and Ansible: automating database infrastructures
Federico Razzoli
 
Mysql all
Mysql allMysql all
Mysql-Basics.pptx
Mysql-Basics.pptxMysql-Basics.pptx
Mysql-Basics.pptx
ssuserf5adce
 
MySQL Backup and Security Best Practices
MySQL Backup and Security Best PracticesMySQL Backup and Security Best Practices
MySQL Backup and Security Best Practices
Lenz Grimmer
 
Chef solo the beginning
Chef solo the beginning Chef solo the beginning
Chef solo the beginning
A.K.M. Ahsrafuzzaman
 
TrinityCore server install guide
TrinityCore server install guideTrinityCore server install guide
TrinityCore server install guide
Seungmin Shin
 
OpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage DayOpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage Day
Dan Radez
 
Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册Yiwei Ma
 
Service discovery and configuration provisioning
Service discovery and configuration provisioningService discovery and configuration provisioning
Service discovery and configuration provisioning
Source Ministry
 
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
Codemotion
 
MySQL Fabric Tutorial, October 2014
MySQL Fabric Tutorial, October 2014MySQL Fabric Tutorial, October 2014
MySQL Fabric Tutorial, October 2014
Lars Thalmann
 

Similar to My SQL 101 (20)

Mysql
Mysql Mysql
Mysql
 
Mysql wp cluster_quickstart_windows
Mysql wp cluster_quickstart_windowsMysql wp cluster_quickstart_windows
Mysql wp cluster_quickstart_windows
 
Get mysql clusterrunning-windows
Get mysql clusterrunning-windowsGet mysql clusterrunning-windows
Get mysql clusterrunning-windows
 
MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017MySQL 101 PHPTek 2017
MySQL 101 PHPTek 2017
 
Multiple instances on linux
Multiple instances on linuxMultiple instances on linux
Multiple instances on linux
 
MySQL Utilities -- PyTexas 2015
MySQL Utilities -- PyTexas 2015MySQL Utilities -- PyTexas 2015
MySQL Utilities -- PyTexas 2015
 
MySQL database replication
MySQL database replicationMySQL database replication
MySQL database replication
 
MySQL for Oracle DBAs
MySQL for Oracle DBAsMySQL for Oracle DBAs
MySQL for Oracle DBAs
 
MariaDB, MySQL and Ansible: automating database infrastructures
MariaDB, MySQL and Ansible: automating database infrastructuresMariaDB, MySQL and Ansible: automating database infrastructures
MariaDB, MySQL and Ansible: automating database infrastructures
 
Mysql all
Mysql allMysql all
Mysql all
 
Mysql all
Mysql allMysql all
Mysql all
 
Mysql-Basics.pptx
Mysql-Basics.pptxMysql-Basics.pptx
Mysql-Basics.pptx
 
MySQL Backup and Security Best Practices
MySQL Backup and Security Best PracticesMySQL Backup and Security Best Practices
MySQL Backup and Security Best Practices
 
Chef solo the beginning
Chef solo the beginning Chef solo the beginning
Chef solo the beginning
 
TrinityCore server install guide
TrinityCore server install guideTrinityCore server install guide
TrinityCore server install guide
 
OpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage DayOpenStack Tokyo Meeup - Gluster Storage Day
OpenStack Tokyo Meeup - Gluster Storage Day
 
Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册Nginx 0.8.x 安装手册
Nginx 0.8.x 安装手册
 
Service discovery and configuration provisioning
Service discovery and configuration provisioningService discovery and configuration provisioning
Service discovery and configuration provisioning
 
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
Thijs Feryn - Leverage HTTP to deliver cacheable websites - Codemotion Milan ...
 
MySQL Fabric Tutorial, October 2014
MySQL Fabric Tutorial, October 2014MySQL Fabric Tutorial, October 2014
MySQL Fabric Tutorial, October 2014
 

More from Dave Stokes

Json within a relational database
Json within a relational databaseJson within a relational database
Json within a relational database
Dave Stokes
 
Database basics for new-ish developers -- All Things Open October 18th 2021
Database basics for new-ish developers  -- All Things Open October 18th 2021Database basics for new-ish developers  -- All Things Open October 18th 2021
Database basics for new-ish developers -- All Things Open October 18th 2021
Dave Stokes
 
Php &amp; my sql - how do pdo, mysq-li, and x devapi do what they do
Php &amp; my sql  - how do pdo, mysq-li, and x devapi do what they doPhp &amp; my sql  - how do pdo, mysq-li, and x devapi do what they do
Php &amp; my sql - how do pdo, mysq-li, and x devapi do what they do
Dave Stokes
 
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Dave Stokes
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
Dave Stokes
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
Dave Stokes
 
Open Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational DatabaseOpen Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational Database
Dave Stokes
 
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and HistogramsDutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
Dave Stokes
 
Validating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentationValidating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentation
Dave Stokes
 
Midwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL FeaturesMidwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL Features
Dave Stokes
 
Data Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database AnalyticsData Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database Analytics
Dave Stokes
 
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Dave Stokes
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New Features
Dave Stokes
 
Confoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & HistogramsConfoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & Histograms
Dave Stokes
 
Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my! Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my!
Dave Stokes
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentation
Dave Stokes
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational Changes
Dave Stokes
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
Dave Stokes
 
A Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document StoreA Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document Store
Dave Stokes
 
Discover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQLDiscover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQL
Dave Stokes
 

More from Dave Stokes (20)

Json within a relational database
Json within a relational databaseJson within a relational database
Json within a relational database
 
Database basics for new-ish developers -- All Things Open October 18th 2021
Database basics for new-ish developers  -- All Things Open October 18th 2021Database basics for new-ish developers  -- All Things Open October 18th 2021
Database basics for new-ish developers -- All Things Open October 18th 2021
 
Php &amp; my sql - how do pdo, mysq-li, and x devapi do what they do
Php &amp; my sql  - how do pdo, mysq-li, and x devapi do what they doPhp &amp; my sql  - how do pdo, mysq-li, and x devapi do what they do
Php &amp; my sql - how do pdo, mysq-li, and x devapi do what they do
 
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
Longhorn PHP - MySQL Indexes, Histograms, Locking Options, and Other Ways to ...
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
 
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScriptJavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
JavaScript and Friends August 20th, 20201 -- MySQL Shell and JavaScript
 
Open Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational DatabaseOpen Source World June '21 -- JSON Within a Relational Database
Open Source World June '21 -- JSON Within a Relational Database
 
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and HistogramsDutch PHP Conference 2021 - MySQL Indexes and Histograms
Dutch PHP Conference 2021 - MySQL Indexes and Histograms
 
Validating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentationValidating JSON -- Percona Live 2021 presentation
Validating JSON -- Percona Live 2021 presentation
 
Midwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL FeaturesMidwest PHP Presentation - New MSQL Features
Midwest PHP Presentation - New MSQL Features
 
Data Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database AnalyticsData Love Conference - Window Functions for Database Analytics
Data Love Conference - Window Functions for Database Analytics
 
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
Open Source 1010 and Quest InSync presentations March 30th, 2021 on MySQL Ind...
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New Features
 
Confoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & HistogramsConfoo 2021 - MySQL Indexes & Histograms
Confoo 2021 - MySQL Indexes & Histograms
 
Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my! Datacon LA - MySQL without the SQL - Oh my!
Datacon LA - MySQL without the SQL - Oh my!
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentation
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational Changes
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
 
A Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document StoreA Step by Step Introduction to the MySQL Document Store
A Step by Step Introduction to the MySQL Document Store
 
Discover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQLDiscover The Power of NoSQL + MySQL with MySQL
Discover The Power of NoSQL + MySQL with MySQL
 

Recently uploaded

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 

Recently uploaded (20)

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 

My SQL 101

  • 1. MySQL 101 MySQL (play /maɪ ˌɛskjuːˈɛl/ "My S-Q-L", [3] officially, but also incorrectly called /ma ɪ ˈsiːkwəl/ "My Sequel") is the world's most used[4] relational database management system (RDBMS)[5] that runs as a server providing multi-user access to a number of databases. The SQL phrase stands for Structured Query Language.[7] – Wikipedia 1 Http://slideshare.net/davestokes/presentations
  • 2. Agenda ➔ Installation ➔ Starting MySQL ➔ Stopping MySQL ➔ Connecting to MySQL ➔ Loading data ➔ Looking at data ➔ Backup ➔ Login/Authentication ➔ Where to go from here ➔ Suggestions ➔ Questions and Answers David.Stokes@Oracle.com @stoker 2
  • 3. Installation  MySQL is available for most Operating Systems  Binaries, RPMS and DEBs available  Windows  Source Code  http://dev.mysql.com/downloads/ Is what I recommend http://dev.mysql.com/doc/refman/5.5/en/getting-mysql.html 3
  • 4. Packages  sudo apt-get install mysql5  rpm -Uhv mysql5 May have slightly different names, may have client utilities separate http://dev.mysql.com/doc/refman/5.5/en/linux-installation.html 4
  • 5. Binaries shell> groupadd mysql shell> useradd -r -g mysql mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> chown -R mysql . shell> chgrp -R mysql . shell> scripts/mysql_install_db --user=mysql shell> chown -R root . shell> chown -R mysql data # Next command is optional shell> cp support-files/my-medium.cnf /etc/my.cnf shell> bin/mysqld_safe --user=mysql & # Next command is optional shell> cp support-files/mysql.server /etc/init.d/mysql.server 5 http://dev.mysql.com/doc/refman/5.5/en/linux-installation.html
  • 6. Configuration Files shell> cp support-files/my-medium.cnf /etc/my.cnf  The configuration files have not aged well. They were written long ago. Please read through the choices to find one that best matches your system.  MySQL will use built-it defaults, almost guaranteed not to be optimal for your environment if no my.cnf is present http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html 6
  • 7. Starting MySQL shell> bin/mysqld_safe --user=mysql & This command is what starts your MySQL server. It runs a wrapper script as user mysql in the background. You might also see this wrapper wrapped /etc/init.d/mysql start or service mysql start http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html 7
  • 8. mysqld  What is that wrapper running? The mysqld binary  /usr/local/mysql/bin/mysqld –user=mysql (And other options from /etc/mysql/my.cnf) http://dev.mysql.com/doc/refman/5.5/en/mysqld.html 8
  • 9. /etc/mysql/my.cnf Options for your [client]  port=3306 MySQL Server [mysql] default-character-set=latin1  Please use as CLI [mysqld] # The TCP/IP Port the MySQL Server will listen on options are not good port=3306 for long term sanity! #Path to installation directory. All paths are usually resolved relative to this. basedir="C:/Program Files/MySQL/MySQL Server 5.5/"  Use your favorite #Path to the database root change control datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.5/Data/" program to track # The default character set that will be used when a new schema or table is changes # created and no character set is defined character-set-server=latin1 # The default storage engine that will be used when create new tables when default-storage-engine=INNODB http://dev.mysql.com/doc/refman/5.5/en/option-files.html 9
  • 10. Configuration file has sections for the various MySQL Programs [client] Settings for client programs port=3306 [mysql] General settings default-character-set=latin1 [mysqld] Server settings # The TCP/IP Port the MySQL Server will listen on port=3306 #Path to installation directory. All paths are usually resolved relative to this. basedir="C:/Program Files/MySQL/MySQL Server 5.5/" http://dev.mysql.com/doc/refman/5.5/en/server-options.html 10
  • 11. STOP!!!!!!  service mysql stop  /etc/init.d/mysql stop mysqladmin -u root shutdown http://dev.mysql.com/doc/refman/5.5/en/mysqladmin.html 11
  • 12. Connecting shell> mysql db_name shell> mysql --user=user_name --password=your_password db_name mysql db_name < script.sql > output.tab Use the mysql client program to connect to the server http://dev.mysql.com/doc/refman/5.5/en/mysql.html 12
  • 13. Connect to Another Host shell> mysql –host=host db_name shell> mysql -h host db_name These two commands are equivalent http://dev.mysql.com/doc/refman/5.5/en/mysql-command-options.html 13
  • 14. Connected 14
  • 16. SHOW DATABASES terminate with ; or g ; g http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html 16
  • 17. q Use q to exit the mysql client http://dev.mysql.com/doc/refman/5.5/en/mysql-commands.html 17
  • 18. Loading Data  Example databases  World  Sakila  Download from http://dev.mysql.com/doc/index-other.html shell> mysql mysql> create database worldg mysql> use worldg mysql> source world_innodb.sql http://dev.mysql.com/doc/index-other.html 18
  • 19. Looking At Data mysql> show tables; mysql> select * from City; mysql> SELECT Name, CountryCode --> FROM City → WHERE Population > 10000000; 19
  • 20. Backup  Physical versus logical  Many options, many tools  Restoration from backup needs to be tested  shell> mysqldump --all-databases > dump.sql  shell> mysqldump --databases db1 db2 db3 > dump.sql (and to restore)  shell> mysql < dump.sql http://dev.mysql.com/doc/refman/5.5/en/backup-and-recovery.html 20
  • 21. Login/Authentication  MySQL authentication is a little primitive  The mysql database has tables for login information  Easy to get confused  Use a tool like MySQL Workbench  Be stingy with permissions  Read chapter 6 of the MySQL manual http://dev.mysql.com/doc/refman/5.5/en/grant-table-structure.html 21
  • 22. mysql.user table  Host  User  Password  Privileges  Connection constraints (ssl, time, # connections)  The server will first check Host address first, then user and password.  Joe @ foo.net can have separate privs than Joe @ 127.0.0.1 and % @ foo.net can trump Joe @ foo.net http://dev.mysql.com/doc/refman/5.5/en/grant-table-structure.html 22
  • 23. Workbench Administrative View http://dev.mysql.com/doc/refman/5.5/en/workbench.html 23
  • 24. You can use the CLI but ... Yes, you can type in the mysql> select * from user where User='joe' limit 1G *************************** 1. row *************************** Host: % User: joe settings for a new account Password: Select_priv: N Insert_priv: N Update_priv: N by hand but it is easy to Delete_priv: N Create_priv: N Drop_priv: N Reload_priv: N fat finger one of the thirty Shutdown_priv: N Process_priv: N File_priv: N Grant_priv: N privs. References_priv: N Index_priv: N Alter_priv: N Show_db_priv: N Super_priv: N Create_tmp_table_priv: N Lock_tables_priv: N Execute_priv: N Repl_slave_priv: N Repl_client_priv: N Create_view_priv: N Show_view_priv: N Other tools have similar Create_routine_priv: N Alter_routine_priv: N Create_user_priv: N Event_priv: N features and you should Trigger_priv: N Create_tablespace_priv: N ssl_type: ssl_cipher: use them to avoid dumb x509_issuer: x509_subject: max_questions: 0 max_updates: 0 errors. max_connections: 0 max_user_connections: 0 plugin: authentication_string: NULL 24
  • 25. Where To Go From Here  Training  Classes  Mysql.com/training  Local user groups or colleges  Webinars  Conferences  MySQL Connect/Oracle Open World  MySQL Innovation Day (Webcast)  SELF  Planet.MySQL.Com  Forums.MySQl.Com 25
  • 26. Suggestions  MySQL Administrator's Bible – Sheeri Cabral 26
  • 27. Also Suggested High Performance MySQL- Schwartz, Zaitsev, and Tkachenko 3rd Edition!!! 27
  • 28. A New Series Effective MySQL Backup and Recovery, Effective MySQL Optimizing Statements, Ronald Bradford 28
  • 29. MySQL Certification Aging but still the Certification Guide 29