<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel><title>mysql | Hugo Ferreira</title>
    <link>https://hugo.ferreira.cc/tags/mysql/</link>
    <description>Recent content in Mysql by Hugo Ferreira</description>
    <image>
      <title>mysql | Hugo Ferreira</title>
      <url>https://hugo.ferreira.cc/hf-bw.jpg</url>
      <link>https://hugo.ferreira.cc/tags/mysql/</link>
    </image>
    <generator>Hugo -- 0.124.1</generator>
    <language>en</language>
    <copyright>2000–2024 by Hugo Ferreira · CC BY 4.0</copyright>
    <lastBuildDate>Tue, 05 Apr 2016 01:05:15 +0000</lastBuildDate>
    <atom:link href="https://hugo.ferreira.cc/tags/mysql/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>✂️ MySQL</title>
      <link>https://hugo.ferreira.cc/mysql/</link>
      <pubDate>Tue, 05 Apr 2016 01:05:15 +0000</pubDate>
      <guid>https://hugo.ferreira.cc/mysql/</guid>
      <description>Small information nuggets and recipies about MySQL</description>
      <content:encoded><![CDATA[<p><em>(most recent on top)</em></p>
<h2 id="show-storage-engine-information-per-table">Show storage engine information (per table)</h2>
<ul>
<li><a href="http://stackoverflow.com/a/4225613/1380781">innodb - How can I check MySQL engine type for a specific table? - Stack Overflow</a></li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">show</span><span class="w"> </span><span class="n">engines</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">select</span><span class="w"> </span><span class="k">table_name</span><span class="p">,</span><span class="w"> </span><span class="n">engine</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">from</span><span class="w"> </span><span class="n">information_schema</span><span class="p">.</span><span class="n">tables</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">where</span><span class="w"> </span><span class="n">table_schema</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;dbname&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="drop-all-tables">Drop all tables</h2>
<p><em>… execute the command below and then run the generated statements</em></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">select</span><span class="w"> </span><span class="n">concat</span><span class="p">(</span><span class="s1">&#39;drop table if exists &#39;</span><span class="p">,</span><span class="w"> </span><span class="k">table_name</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39; cascade;&#39;</span><span class="p">)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">from</span><span class="w"> </span><span class="n">information_schema</span><span class="p">.</span><span class="n">tables</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">where</span><span class="w"> </span><span class="n">table_schema</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;database_name&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="recreate-a-blank-database">Recreate a blank database</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">drop</span><span class="w"> </span><span class="k">schema</span><span class="w"> </span><span class="n">dbname</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">create</span><span class="w"> </span><span class="k">database</span><span class="w"> </span><span class="n">dbname</span><span class="w"> 
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">default</span><span class="w"> </span><span class="nb">character</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="n">utf8</span><span class="w"> </span><span class="k">collate</span><span class="w"> </span><span class="n">utf8_general_ci</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="show-default-character-set">Show default character set</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;char%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;coll%&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="change-the-database-default-character-set">Change the database default character set</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">alter</span><span class="w"> </span><span class="k">database</span><span class="w"> </span><span class="n">dbname</span><span class="w"> 
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">default</span><span class="w"> </span><span class="nb">character</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="n">utf8</span><span class="w"> </span><span class="k">collate</span><span class="w"> </span><span class="n">utf8_general_ci</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="change-table-character-set">Change table character set</h2>
<p><em>… for each table</em></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">alter</span><span class="w"> </span><span class="k">table</span><span class="w"> </span><span class="n">tablename</span><span class="w"> 
</span></span></span><span class="line"><span class="cl"><span class="w"></span><span class="k">convert</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="nb">character</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="n">utf8</span><span class="w"> </span><span class="k">collate</span><span class="w"> </span><span class="n">utf8_general_ci</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="show-permissions-for-a-user">Show permissions for a user</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">show</span><span class="w"> </span><span class="n">grants</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">username</span><span class="o">@</span><span class="n">localhost</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="show-list-of-databases-in-server">Show list of databases in server</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">show</span><span class="w"> </span><span class="n">databases</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="change-permissions-on-a-database">Change permissions on a database</h2>
<ul>
<li><a href="http://dbahire.com/stop-using-flush-privileges/">Stop using FLUSH PRIVILEGES – I used to be a MySQL DBA for Hire</a>
<ul>
<li>No need for doing flush privileges when using “higher level” commands</li>
<li>Only when directly manipulating the permissions tables with “low level” commands (insert, update, delete) does the flush privileges command need to be done to reload the permissions copy MySQL keeps cached in memory</li>
</ul>
</li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">grant</span><span class="w"> </span><span class="k">all</span><span class="w"> </span><span class="k">privileges</span><span class="w"> </span><span class="k">on</span><span class="w"> </span><span class="o">`</span><span class="n">dbname</span><span class="o">`</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="s1">&#39;username&#39;</span><span class="o">@</span><span class="s1">&#39;localhost&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">revoke</span><span class="w"> </span><span class="k">all</span><span class="w"> </span><span class="k">privileges</span><span class="w"> </span><span class="k">on</span><span class="w"> </span><span class="o">`</span><span class="n">dbname</span><span class="o">`</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="s1">&#39;username&#39;</span><span class="o">@</span><span class="s1">&#39;localhost&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="list-users-in-the-database">List users in the database</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">select</span><span class="w"> </span><span class="k">user</span><span class="p">,</span><span class="w"> </span><span class="k">host</span><span class="p">,</span><span class="w"> </span><span class="n">password</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="n">mysql</span><span class="p">.</span><span class="k">user</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div><h2 id="rename-a-user">Rename a user</h2>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="k">rename</span><span class="w"> </span><span class="k">user</span><span class="w"> </span><span class="s1">&#39;oldname&#39;</span><span class="o">@</span><span class="s1">&#39;localhost&#39;</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="s1">&#39;newname&#39;</span><span class="o">@</span><span class="s1">&#39;localhost&#39;</span><span class="p">;</span><span class="w">
</span></span></span></code></pre></div>]]></content:encoded>
    </item>
  </channel>
</rss>
