MySQL ์๊ฐ
๊ฐ๋ตํ ์๊ฐ
version history
MySQL ์ฌ์ฉ์ฒ
์ ํ ๊ตฐ ๋ณํ
์์ฅ ๋ณํ
MySQL ๊ตฌ์ฑ
MySQL ํด๋ผ์ด์ธํธ / ์๋ฒ ๊ฐ๋
ํด๋ผ์ด์ธํธ ํ๋ก๊ทธ๋จ
MySQL ์ค์น
MySQL ๋ฒ์
MySQL ์ค์น
MySQL ํ๊ฒฝ ์ค์
ํ๊ฒฝ์ค์ , ๋ณ์ ์ค์
MySQL ์คํ ๋ฆฌ์ง ์์ง ์๊ฐ
MySQL tuning ์๊ฐ ๋ฐ ๋ฐฉ๋ฒ
๋ฐ์ดํฐ ๋ฐฑ์ /๋ณต๊ตฌ ๋ฐฉ๋ฒ
๋ฐฑ์
๋ณต๊ตฌ
MySQL Upgrade
MySQL ์๊ฐ
๊ฐ๋ตํ ์๊ฐ
version history
MySQL ์ฌ์ฉ์ฒ
์ ํ ๊ตฐ ๋ณํ
์์ฅ ๋ณํ
MySQL ๊ตฌ์ฑ
MySQL ํด๋ผ์ด์ธํธ / ์๋ฒ ๊ฐ๋
ํด๋ผ์ด์ธํธ ํ๋ก๊ทธ๋จ
MySQL ์ค์น
MySQL ๋ฒ์
MySQL ์ค์น
MySQL ํ๊ฒฝ ์ค์
ํ๊ฒฝ์ค์ , ๋ณ์ ์ค์
MySQL ์คํ ๋ฆฌ์ง ์์ง ์๊ฐ
MySQL tuning ์๊ฐ ๋ฐ ๋ฐฉ๋ฒ
๋ฐ์ดํฐ ๋ฐฑ์ /๋ณต๊ตฌ ๋ฐฉ๋ฒ
๋ฐฑ์
๋ณต๊ตฌ
MySQL Upgrade
DB Migration to Azure Database for PostgreSQLrockplace
ย
Migration from Oracle to PostgreSQL using Azure DMS
-Table of contents-
1) Azure DMS Introduction
2) What are the Azure DMS restriction ?
3)Guide Quick for Azure DMS
4) Test Environment for Migration
5) Migration Progression Procedure
6) DEMO
1. Azure Databases for PostgreSQL,
MySQL and MariaDB
| ์์ : ๋ฝํ๋ ์ด์ค
| ๋ ์ง : 2021๋ 02์ 18์ผ
2. Agenda
Azure Databases for OSS DB
1
2
4
3
Azure Databases Service Features
OSS DBs Migration Strategy
Pre-Migration
5 Migration
3. Agenda
Azure Databases for OSS DB
1
2
4
3
Azure Databases Service Features
OSS DBs Migration Strategy
Pre-Migration
5 Migration
4. State of the Open-Source DBMS Market
2022๋ ๊น์ง
70% ์ด์์ ์ ๊ท ๊ฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์
์คํ์์ค DB ๋ฅผ ์ด์ฉํ ๊ฒ์ด๋ฉฐ
50% ์ด์์ ๊ธฐ์กด ์ ๋ฌด๊ฐ ์์ฉ DB ์์
์ด๊ด๋ ์ ๋ง์ด๋ค.
Gartner | State of the Open-Source
DBMS Market, 2018
โ
5. Manage risk and meet the pace of change in the cloud
Manage risk and meet the pace of change in the cloud
94%
20.6%
19.6%
18.8%
1. Vanson Bourne. โThe Business Impact of the Cloudโ report
8. Azure database services for MySQL, PostgreSQL & MariaDB
More choices and full integration into Azureโs ecosystem and services
T-SQL
Java
C/C++
C#/VB.NET
PHP
Node.js
Python
Ruby
Managed
community MySQL,
PostgreSQL, and
MariaDB
Languages and
frameworks of your
choice
Easy lift and shift
Scale in
seconds with
built-in high
availability*
Unparalleled
security and
compliance
Industry-
leading
global reach
Enterprise ready
*Hyperscale (Citus) on Azure Database for PostgreSQL โ Horizontal scale-out deployment option for single node Postgres across hundreds of nodes (blog/tech)
9. SQL Server 2017
MySQL/Postgre
SQL/MariaDB
Azure SQL VMs
Azure Win/
Linux VMs
Azure laaS vs. PaaS
Different Azure Data Services give you
different levels of control and flexibility
for your data
For a high level of control including the
ability to pick SQL Server and OS
version, choose IaaS
For automated management and
administration, choose PaaS
On-premises Infrastructure
as a service
Platform
as a service
Threat detection,
risk management
Performance
management
Applications
Data
High availability
/DR/backups
Database provision/
patch/scaling
O/S provision
/patching
Virtualization
Hardware
Datacenter
management
Managed by customer
Threat detection,
risk management
Performance
management
Applications
Data
High availability
/DR/backups
Database provision/
patch/scaling
O/S
Virtualization
Hardware
Datacenter
management
Managed by Cloud
provider
Threat detection,
risk management
Performance
management
Applications
Data
High Availability/
DR/backups
Database provision/
patch/scaling
O/S
Virtualization
Hardware
Datacenter
management
Azure SQL Database
Azure Database for
MySQL/PostgreSQL/MariaDB
Azure Database
platform differentiation
10. Azure relational database platform
SQL Data Warehouse SQL Database PostgreSQL MySQL MariaDB
Database
Services
Platform
Intelligent: advisors, tuning, monitoring
Flexible: on-demand scaling, resource governance
Trusted: HA/DR, backup/restore, security, audit, isolation
Azure Compute
Azure Storage
Global Azure with 42 regions
Power
BI,
App
Services,
Data
Factory,
Analytics,
ML,
Cognitive,
Botโฆ
11. Service tiers
Service tier Basic
Intended use case
Built for workloads with light comp
ute needs and variable IO performa
nce
vCore 1 2
Compute generation Gen 4, Gen 5
Storage
5GB โ 1TB
Magnetic media
IOPS Variable
12. Service tiers
Service tier Basic
Intended use case
Built for workloads with light comp
ute needs and variable IO performa
nce
vCore 1 2
Compute generation Gen 4, Gen 5
Storage
5GB โ 1TB
Magnetic media
IOPS Variable
General Purpose
Balanced IO and compute
Ideal for most business workloads
offering balanced and scalable
compute and storage options
2 4 8 16 32
Gen 4, Gen 5
5GB โ 2TB
Remote SSD
100-6000 IOPS
13. Service tiers
Performance Optimized
Memory optimized
Cache more data for faster transact
ion processing and higher concurre
ncy
2 4 8 16
Gen 5 only
5GB โ 2TB
Remote SSD
100-6000 IOPS
Service tier Basic
Intended use case
Built for workloads with light comp
ute needs and variable IO performa
nce
vCore 1 2
Compute generation Gen 4, Gen 5
Storage
5GB โ 1TB
Magnetic media
IOPS Variable
General Purpose
Balanced IO and compute
Ideal for most business workloads
offering balanced and scalable
compute and storage options
2 4 8 16 32
Gen 4, Gen 5
5GB โ 2TB
Remote SSD
100-6000 IOPS
Supported versions
MySQL: 5.6, 5.7, 8.0 / MariaDB : 10.2, 10.3
PostgreSQL: 9.5, 9.6, 10, 11
15. Flexible Server (Preview)
๏ฌ Simplify developer experiences
๏ฌ More Server Parameter Control
๏ฌ More Cost Optimization Controls
๏ฌ Enable Zone Resilient & Aware
Applications
16. Flexible Server (Preview)
Single Server Flexible Server Preview Flexible Server GA
Compute Options
Basic,
General Purpose
Memory Optimized
Burstable
General purpose
Burstable
General Purpose
Memory Optimized
Storage Options Std and Premium storage Premium storage (remote SSD) Premium storage (remote SSD)
Pause and Resume
(Stop/Start) O P P
Performance Variable on basic SKUs
Improved out-of-box
performance
Improved out-of-box
performance
High Availability Built-in HA (Single-AZ) Single Zone/Zone Redundant HA Single Zone/Zone Redundant HA
Compatibility with
Extensions (Postgres Only)
Subset supported Improved High
OSS Engine Version MySQL 5.7 & 8; PG11,10, 9.6, 9.5 MySQL - 5.7; PG 11&12 MySQL 5.7, 8.0; PG 11&12
VNET Integration O O P
VNET Service Endpoints P N/A N/A
Private Link P N/A N/A
BYOK P O P
Custom Maintenance
Window O P P
Reservations P O P
Cross region replica P O P
PITR P P P
17. Hyperscale (Citus) Architecture
Shard your PostgreSQL database
across multiple nodes to give your
application more memory,
compute, and disk storage
Easily add worker nodes to
achieve horizontal scale, while
being able to deliver parallelism
even within each node
Scale out to 100s of nodes
Coordinator
Table metadata
Each node PostgreSQL
with Citus installed
1 shard = 1 PostgreSQL table
18. Scaled-out aggregate
Aggregating data before transactions avoids rewriting each row and can save write
overhead and table bloat
Bulk aggregation avoids concurrency issues
APPLICATION
SELECT
FROM
GROUP BY
company_id,
avg(spend) AS avg_campaign_spend
compaigns
company_id;
METADATA
COORDINATOR NODE
WORKER NODES
W1
W2
W3 โฆ Wn
SELECT company_id
sum(spend),
count(spend) โฆ
FROM
campaigns_2009 โฆ
SELECT company_id
sum(spend),
count(spend) โฆ
FROM
campaigns_2001 โฆ
SELECT company_id
sum(spend),
count(spend) โฆ
FROM
campaigns_2017 โฆ
19. Key uses cases for Hyperscale (Citus)
Scale beyond single node
Minimize hotspots by spreading out
tenants
Rebalance data fully online
Isolate large tenants to their own
hardware
Multi-tenant & SaaS
applications
Real-time operational
analytics
Transactional/OLTP
applications
Ingest terabytes of data per day
Enable sub-second query responses
Parallelize across nodes for 100x
performance
Simplify complex ETL processes
Ensure high performance with
concurrent users
Avoid single points of failure
Distribute transaction processes
across multiple nodes
Manage high volumes of
transactions
20. Agenda
Azure Databases for OSS DB
1
2
4
3
Azure Databases Service Features
OSS DBs Migration Strategy
Pre-Migration
5 Migration
21. Security built in
Identity
Native authentication
AAD integration
Threat detection
Control access
Secure SSL connectivity
Server firewall rules
Virtual networks
Protect data
Built-in encryption at-rest for data
and backups
22. VNET service endpoint
# Creates the virtual network *myVNet* and subnet *mySubnet*
az network vnet create
-g myRG
-n myVNet
--address-prefixes 10.0.0.0/16
-l westus
# Creates the service endpoint
az network vnet subnet create
-g myRG
-n mySubnet
--vnet-name myVNet
--address-prefix 10.0.1.0/24
--service-endpoints Microsoft.SQL
# Create a VNet rule on the sever to secure it to the subnet
az postgres vnet-rule create
--name myRule
--resource-group myRG
--server mypgserver-20180111
--subnet mySubnet
Multi-
Tenant
PaaS
Customer VNET
IP ACL
IP ACL
V
N
E
T
A
C
L
V
N
E
T
A
C
L
Express Route Public Peering or
internet (Using ACLed NAT Ips) in
development
VM VM
VM
VM VM
VM
Gateway
Virtual Network
FrontEnd Subnet
HDI Subnet
!
!
HDInsight
BackEnd Subnet
24. Built-in high availability
Azure Storage
Data Data Data Data
Gateway
Application
Application
PostgreSQL
Client
MySQL
Client
server=server.mysql.database.azure.com
MySQL IP:3306
PGSQL IP:5432
Server
provisioning
And
management
US
West
MySQL or
PostgreSQL
Server
MySQL or
PostgreSQL
Server
Azure
Database
Management
Service
26. High availability in AWS RDS vs. ADS
High availability
AWS RDS with a
99.95% SLA is 2x
more expensive*
than Azure
Database for
MySQL/PostgreSQL
High availability
27. Scale performance on the fly
MySQL/MariaDB: 3306
PostgreSQL: 5432
Azure
Storage
Server
Server
31. Server logs (MySQL and MariaDB)
โข Enable slow_query_log for insights on slow
queries (disabled by default)
โข Logs are available for up to seven days from
their creation. If the total size of
the available logs exceeds 7 GB, then the oldest
files are deleted until space is available.
โข New log files are created every 24 hours.
โข Log files are rotated after the 7 GB limit is
reached.
Built-in server logs for troubleshooting database
errors or performance issues
32. Server logs (PostgreSQL)
โข Configure log_retention_days (3-7 days) to
define the retention period for system logs
โข Configure log_statement to โALLโ for
analyzing performance issues
โข log_min_duration_statement lets you specify
the minimum execution time (in milliseconds)
above which statements will be logged.
โข Consumes server provisioned storage
โข The log files rotate every one hour or 100 MB
size, whichever comes first.
Built-in server logs for troubleshooting database
errors or performance issues
57. Migrate MySQL to Azure Database for MySQL
๋คํ ๋ด๋ณด๋ด๊ธฐ ๊ฐ์ ธ์ค๊ธฐ Azure Database Migration Service
- On-premise์ Azure์ DB๋ฅผ ๋๊ธฐํ
- ๊ฐ๋ ์ค์ง ์๊ฐ์ ์ต์ํ
- MySQL 8.0 ์ผ๋ก์ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ง์๋์ง ์์
1. mysqldump๋ฅผ ์ด์ฉํ on-premise db๋ฐฑ์
2. mysql๋ฅผ ์ด์ฉํ Azure๋ก ๋ณต์
1. Mysqldump or Workbench ๋๊ตฌ ์ฌ์ฉํ์ฌ ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์
2. Azure DMS ์ธ์คํด์ค ์์ฑ
3. Azure DMS ํ๋ก์ ํธ ์์ฑ
4. ๋ง์ด๊ทธ๋ ์ด์ ์คํ
5. ๋ง์ด๊ทธ๋ ์ด์ ์ปท์ค๋ฒ ์ํ
- DB ์ ํฉ์ฑ์ ์ํด ์๋น์ค ์ค์ง ํ์
- ํน์ table๋ง ๋ง์ด๊ทธ๋ ์ด์ ๊ฐ๋ฅ
On-premise
MySQL
Azure for
MySQL
ํน์ง ๋ฐ ์ฃผ์์ฌํญ
ํน์ง ๋ฐ ์ฃผ์์ฌํญ
- Azure Database for MySQL ์ InnoDB ์์ง๋ง ์ง์
- As-is ์ To-be์ ์์ ๋ฒ์ ์ ๋์ผํด์ผํจ
- Azure Database for MySQL ์ง์๋ฒ์ (5.6, 5.7, 8.0)
58. Oracle to PostgreSQL | Cost of Ownership
Customers migrate from
Oracle to Azure database
for PostgreSQL to reduce
overall cost of ownership by
up to 95% in savings*
Configuration is based on a 4 socket, 32 core x86 processer
Oracle Cloud Service editions are based on virtual machines
โข *Oracle licensing for Enterprise Edition is based on number
of processors which is derived by multiplying the number of
cores by a factor. In the case of this example it is 32 cores
multiplied by .5 for x86 resulting in 16 processors.
โข **Annual maintenance and support for Oracle is 22% of the
annual license cost.
โข ***Oracle standard terms for Enterprise Edition is 50% of list
pricing for 3 years. This example accounts for the 50% list
pricing for 3 years in the total.
Project Size? > $200K ADS in FY20-21
*See Notes Section
Oracle Database
Cloud Service
Enterprise Edition
Oracle Database
Cloud Service
Enterprise Edition
High Performance
Oracle Enterprise
Edition
Azure Database for
PostgreSQL
Database $9,599 / month $19,801 / month $47,500* / per CPU $2,046.34 / month
Virtual Private Da
tabase
Included Included Included Row level security
Partitioning Not included Included $11,500* / per CPU Included
Data Guard Not included Not included $11,500* / per CPU Included
Spatial Not included Included $17,500* / per CPU Included
Diagnostics Included Included $7,500* / per CPU Included
Tuning Pack Included Included $5,000* / per CPU Included
Lifecycle Manage
ment Pack
Not included Included $12,000* / per CPU
Included as part of
OSS tool suite
Total Capex $0 $0 $1,800,000* $0
Annual Support /
Maintenance per
Server (Opex)
Included Included $396,000** Included
Total 3 Year Cost
of Ownership
$345,564 $712,836 $3,294,000*** $73,668
Savings with Azur
e (approx.)
80% 90% 95% NA
59. Your data journey to Azure
Source
Assessment
Azure Migrate,
CloudPilot,CloudRecon
Migration
Azure Database
Migration Service
Microsoft Azure
Seamless, end-to-end solution | Near-zero downtime | Resilient | Migrate at-scale from multiple sources