{"id":1291,"date":"2018-08-05T03:56:56","date_gmt":"2018-08-05T03:56:56","guid":{"rendered":"http:\/\/dbtut.com\/?p=1291"},"modified":"2018-11-09T13:31:47","modified_gmt":"2018-11-09T13:31:47","slug":"alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change","status":"publish","type":"post","link":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/","title":{"rendered":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/www.percona.com\/doc\/percona-toolkit\/2.1\/pt-online-schema-change.html\"><code>pt-online-schema-change<\/code><\/a>\u00a0is a binary part of\u00a0<a href=\"http:\/\/www.percona.com\/software\/percona-toolkit\/\">Percona-toolkit<\/a>\u00a0packages by Percona.<\/p>\n<p>It\u2019s one of the most stable and efficient, tools for performing large MySQL table structure change in live production database, minimizing DB downtime without blocking reads and writes while performance your alter in back-end.<\/p>\n<p>&nbsp;<\/p>\n<p><strong class=\"program\">pt-online-schema-change<\/strong>\u00a0works by :<\/p>\n<ul>\n<li>creating an empty copy table\u00a0<code>test_table_new\u00a0<\/code>of the table\u00a0<code>test_table<\/code>\u00a0to alter,<\/li>\n<li>alter empty table\u00a0<code>test_table_new<\/code>\u00a0as desired,<\/li>\n<li>add triggers on insert, update &amp; delete to sync table\u00a0<code>test_table_new<\/code>\u00a0 with\u00a0\u00a0<code>test_table<\/code>\u00a0during the structure change, so any writes against the original table\u00a0<code>test_table<\/code>\u00a0will be replicated into the new table\u00a0<code>test_table_new<\/code>\u00a0for data consistency<\/li>\n<li>and then copying rows from the original table\u00a0<code>test_table<\/code>\u00a0into the new table\u00a0\u00a0<code>test_table_new<\/code>,<\/li>\n<li>swap\u00a0<code>test_table<\/code>\u00a0with\u00a0<code>test_table_new<\/code>\u00a0by performing an atomic rename<\/li>\n<\/ul>\n<h2><\/h2>\n<h2 id=\"example-usage:e57820ada2168416861df3f2631d6958\">Example usage<\/h2>\n<p>On a table with 38 Millions of rows.<\/p>\n<pre class=\"lang:default decode:true\">sudo pt-online-schema-change --ask-pass --user mhoundegnon --execute\u00a0--alter \" ADD INDEX CUSTOMER_ID \r\n(CUSTOMER_ID ASC); \" D='segmentation', t='responsys_sent'<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1292\" src=\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\" alt=\"\" width=\"529\" height=\"694\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>After 1H 20 minutes the structure change is done.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1293\" src=\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change_init.png\" alt=\"\" width=\"635\" height=\"217\" \/><\/p>\n<p>Notice: it may take a while until the tool starts showing progress, as querying\u00a0<code>information_schema<\/code>\u00a0<a href=\"http:\/\/www.mysqlperformanceblog.com\/2011\/12\/23\/solving-information_schema-slowness\/\">takes a long time<\/a>. Use\u00a0<code>show processlist<\/code>\u00a0to see what it\u2019s doing.<\/p>\n<p>More details about each argument\u00a0<a href=\"https:\/\/www.percona.com\/doc\/percona-toolkit\/LATEST\/pt-online-schema-change.html\" target=\"_blank\" rel=\"noopener\">here<\/a><\/p>\n\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1291\" class=\"pvc_stats all  \" data-element-id=\"1291\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; pt-online-schema-change\u00a0is a binary part of\u00a0Percona-toolkit\u00a0packages by Percona. It\u2019s one of the most stable and efficient, tools for performing large MySQL table structure change in live production database, minimizing DB downtime without blocking reads and writes while performance your alter in back-end. &nbsp; pt-online-schema-change\u00a0works by : creating an empty copy table\u00a0test_table_new\u00a0of the table\u00a0test_table\u00a0to alter, alter &hellip;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1291\" class=\"pvc_stats all  \" data-element-id=\"1291\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[7],"tags":[1330,1301,1331,1329,1328],"class_list":["post-1291","post","type-post","status-publish","format-standard","","category-mysql","tag-hot-backup","tag-mysql","tag-non-blocking-backup","tag-percona-toolkit","tag-pt-online-schema-change"],"aioseo_notices":[],"a3_pvc":{"activated":true,"total_views":732,"today_views":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials<\/title>\n<meta name=\"description\" content=\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials\" \/>\n<meta property=\"og:description\" content=\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\" \/>\n<meta property=\"og:site_name\" content=\"Database Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-05T03:56:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-11-09T13:31:47+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\" \/>\n<meta name=\"author\" content=\"Mikael HOUNDEGNON\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@HOUNDEGNON_MIKE\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mikael HOUNDEGNON\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\"},\"author\":{\"name\":\"Mikael HOUNDEGNON\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/86e2eaec293d22fa7a83c539631e106f\"},\"headline\":\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change\",\"datePublished\":\"2018-08-05T03:56:56+00:00\",\"dateModified\":\"2018-11-09T13:31:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\"},\"wordCount\":178,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\",\"keywords\":[\"hot backup\",\"MySQL\",\"non blocking backup\",\"percona-toolkit\",\"pt-online-schema-change\"],\"articleSection\":[\"MySQL-MariaDB\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\",\"url\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\",\"name\":\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\",\"datePublished\":\"2018-08-05T03:56:56+00:00\",\"dateModified\":\"2018-11-09T13:31:47+00:00\",\"description\":\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change\",\"breadcrumb\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage\",\"url\":\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\",\"contentUrl\":\"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dbtut.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Alter large MySQL table without blocking reads or writes with pt-online-schema-change\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dbtut.com\/#website\",\"url\":\"https:\/\/dbtut.com\/\",\"name\":\"Database Tutorials\",\"description\":\"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux\",\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dbtut.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dbtut.com\/#organization\",\"name\":\"dbtut\",\"url\":\"https:\/\/dbtut.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"width\":223,\"height\":36,\"caption\":\"dbtut\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/86e2eaec293d22fa7a83c539631e106f\",\"name\":\"Mikael HOUNDEGNON\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a7eeb4be963109ed74e93e6afeaead434866af33be2b30acb0a38a42d30cadb6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a7eeb4be963109ed74e93e6afeaead434866af33be2b30acb0a38a42d30cadb6?s=96&d=mm&r=g\",\"caption\":\"Mikael HOUNDEGNON\"},\"description\":\"My name is Mikael HOUNDEGNON. I am an experienced MySQL DBA\/Developer based in the greater Chicago area. You can find out more about me here. I blog here mostly about things I don\u2019t want to forget ? most likely, MySQL Tips. My specialties : MySQL Replication (Master Slave, MultiMaster, Fail over, etc) MySQL Backups MySQL Query Optimization MySQL Performance Tuning MySQL Stored Procedures Storage Engine Tuning Do you have an interesting project idea? Or you just want to chat? Get in touch!\",\"sameAs\":[\"https:\/\/mikaelhoundegnon.wordpress.com\/\",\"https:\/\/x.com\/@HOUNDEGNON_MIKE\"],\"url\":\"https:\/\/dbtut.com\/index.php\/author\/mikaelhoundegnon\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials","description":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/","og_locale":"en_US","og_type":"article","og_title":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials","og_description":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change","og_url":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/","og_site_name":"Database Tutorials","article_published_time":"2018-08-05T03:56:56+00:00","article_modified_time":"2018-11-09T13:31:47+00:00","og_image":[{"url":"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png","type":"","width":"","height":""}],"author":"Mikael HOUNDEGNON","twitter_card":"summary_large_image","twitter_creator":"@HOUNDEGNON_MIKE","twitter_misc":{"Written by":"Mikael HOUNDEGNON","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#article","isPartOf":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/"},"author":{"name":"Mikael HOUNDEGNON","@id":"https:\/\/dbtut.com\/#\/schema\/person\/86e2eaec293d22fa7a83c539631e106f"},"headline":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change","datePublished":"2018-08-05T03:56:56+00:00","dateModified":"2018-11-09T13:31:47+00:00","mainEntityOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/"},"wordCount":178,"commentCount":0,"publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"image":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage"},"thumbnailUrl":"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png","keywords":["hot backup","MySQL","non blocking backup","percona-toolkit","pt-online-schema-change"],"articleSection":["MySQL-MariaDB"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/","url":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/","name":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change - Database Tutorials","isPartOf":{"@id":"https:\/\/dbtut.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage"},"image":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage"},"thumbnailUrl":"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png","datePublished":"2018-08-05T03:56:56+00:00","dateModified":"2018-11-09T13:31:47+00:00","description":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change","breadcrumb":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#primaryimage","url":"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png","contentUrl":"http:\/\/dbtut.com\/wp-content\/uploads\/2018\/08\/pt-online-schema-change.png"},{"@type":"BreadcrumbList","@id":"https:\/\/dbtut.com\/index.php\/2018\/08\/05\/alter-large-mysql-table-without-blocking-reads-or-writes-with-pt-online-schema-change\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dbtut.com\/"},{"@type":"ListItem","position":2,"name":"Alter large MySQL table without blocking reads or writes with pt-online-schema-change"}]},{"@type":"WebSite","@id":"https:\/\/dbtut.com\/#website","url":"https:\/\/dbtut.com\/","name":"Database Tutorials","description":"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux","publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dbtut.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dbtut.com\/#organization","name":"dbtut","url":"https:\/\/dbtut.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","width":223,"height":36,"caption":"dbtut"},"image":{"@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dbtut.com\/#\/schema\/person\/86e2eaec293d22fa7a83c539631e106f","name":"Mikael HOUNDEGNON","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a7eeb4be963109ed74e93e6afeaead434866af33be2b30acb0a38a42d30cadb6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a7eeb4be963109ed74e93e6afeaead434866af33be2b30acb0a38a42d30cadb6?s=96&d=mm&r=g","caption":"Mikael HOUNDEGNON"},"description":"My name is Mikael HOUNDEGNON. I am an experienced MySQL DBA\/Developer based in the greater Chicago area. You can find out more about me here. I blog here mostly about things I don\u2019t want to forget ? most likely, MySQL Tips. My specialties : MySQL Replication (Master Slave, MultiMaster, Fail over, etc) MySQL Backups MySQL Query Optimization MySQL Performance Tuning MySQL Stored Procedures Storage Engine Tuning Do you have an interesting project idea? Or you just want to chat? Get in touch!","sameAs":["https:\/\/mikaelhoundegnon.wordpress.com\/","https:\/\/x.com\/@HOUNDEGNON_MIKE"],"url":"https:\/\/dbtut.com\/index.php\/author\/mikaelhoundegnon\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/1291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/comments?post=1291"}],"version-history":[{"count":0,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/1291\/revisions"}],"wp:attachment":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media?parent=1291"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/categories?post=1291"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/tags?post=1291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}