{"id":21192,"date":"2021-05-20T14:30:13","date_gmt":"2021-05-20T05:30:13","guid":{"rendered":"https:\/\/labs.gree.jp\/blog\/?p=21192"},"modified":"2021-05-21T18:02:04","modified_gmt":"2021-05-21T09:02:04","slug":"how-to-build-mysql-8-0-25-on-wsl2-and-debug-with-visual-studio-code","status":"publish","type":"post","link":"https:\/\/labs.gree.jp\/blog\/2021\/05\/21192\/","title":{"rendered":"How to build MySQL 8.0.25 on WSL2 (and Debug with Visual Studio Code)"},"content":{"rendered":"<p>\u3053\u3093\u306b\u3061\u308f\u3002\u305b\u3058\u307e\u3067\u3059\u3002\u4eca\u56de\u3082\u3086\u308b\u3075\u308f\u3067\u3059\u3002<\/p>\n<h2>\u306f\u3058\u3081\u306b<\/h2>\n<p>\u968f\u5206\u524d\u306e\u8a71\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u304c\u3001Windows 10 20H1 \u3067 WSL2 \u304c\u6b63\u5f0f\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u3001\u3057\u3054\u3068\u3067Linux\u4f7f\u3063\u3066\u308b\u4eba\u305f\u3061\u306b\u3068\u3063\u3066\u3001 Windows \u306f\u304b\u306a\u308a\u4f7f\u3044\u3084\u3059\u3044\u74b0\u5883\u306b\u306a\u3063\u3066\u304d\u305f\u304b\u306a\u3068\u601d\u3044\u307e\u3059\u3002Visual Studio Code \u304b\u3089WSL2\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b<a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-vscode-remote.remote-wsl\">Remote - WSL extension<\/a>\u3082\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\u306e\u3067\u3001 Windows \u4e0a\u306e Visual Studio Code \u304b\u3089 WSL2 \u4e0a\u3067 gdb \u8d77\u52d5\u3057\u3066 mysqld \u306e\u30c7\u30d0\u30c3\u30b0\u3059\u308b\u306e\u3082\u5bb9\u6613\u306b\u306a\u308a\u307e\u3057\u305f\u3002\u3053\u308c\u306f\u3084\u308b\u3057\u304b\u306a\u3044\u3067\u3057\u3087\u3046\u3002<\/p>\n<p>\u3084\u308b\u3057\u304b\u306a\u3044\u3067\u3059\u304b\u3089\u3001\u5099\u5fd8\u9332\u7684\u306b\u66f8\u3044\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<h2>How to build MySQL 8.0.25 on WSL2<\/h2>\n<p>Linux \u306a\u3093\u3067\u3001 Windows \u3084 Mac \u3068\u7570\u306a\u308a\u3001 MySQL \u3092\u30d3\u30eb\u30c9\u3059\u308b\u306e\u306f\u975e\u5e38\u306b\u5bb9\u6613\u3067\u3059\u3002\u306a\u306e\u3067\u3001\u30d3\u30eb\u30c9\u4ee5\u5916\u306e\u90e8\u5206\u306e\u30dd\u30a4\u30f3\u30c8\u306b\u3064\u3044\u3066\u91cd\u70b9\u7684\u306b\u66f8\u3044\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<h3>WSL2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b<\/h3>\n<p><a href=\"https:\/\/docs.microsoft.com\/ja-jp\/windows\/wsl\/install-win10\">\u516c\u5f0f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8<\/a>\u3092\u53c2\u7167\u3059\u308b\u306a\u3069\u3057\u3066\u3001WSL2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3092\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n<p>\u4ee5\u964d\u3001 Ubuntu 20.04 LTS on WSL2 \u3092\u524d\u63d0\u306b\u8a18\u8ff0\u3057\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n<h3>MySQL 8.0 GA \u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9<\/h3>\n<p><a href=\"https:\/\/dev.mysql.com\/downloads\/mysql\/\">https:\/\/dev.mysql.com\/downloads\/mysql\/<\/a><\/p>\n<p>\u304b\u3089MySQL Community Server 8.0 GA\u306e\u6700\u65b0\u7248\u306e Generic Linux (Architecture Independent), Compressed TAR Archive<br \/>\nIncludes Boost Headers \u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002\u73fe\u6642\u70b9\u3067\u6700\u65b0\u306f mysql-boost-8.0.25.tar.gz \u3067\u3059\u3002<\/p>\n<pre><code>$ mkdir -p ~\/src\/{boost,mysql}\n$ cd ~\/src\/mysql\n$ wget https:\/\/dev.mysql.com\/get\/Downloads\/MySQL-8.0\/mysql-boost-8.0.25.tar.gz\n$ tar xvf mysql-boost-8.0.25.tar.gz\n<\/code><\/pre>\n<p>\u306a\u3069\u3068\u3084\u3063\u3066\u3044\u305f\u3060\u3051\u3070\u826f\u3044\u3067\u3059\u3002<\/p>\n<p>\u3061\u306a\u307f\u306b\u3001\u516c\u5f0f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306e<a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/ja\/checking-gpg-signature.html\">2.1.4.2 GnuPG \u3092\u4f7f\u7528\u3057\u305f\u7f72\u540d\u78ba\u8a8d<\/a>\u3067gpg --verify\u3059\u308b\u305f\u3081\u306e\u624b\u9806\u7b49\u66f8\u3044\u3066\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u305f tar.gz \u306f verify \u3055\u308c\u3066\u3082\u3088\u308d\u3057\u3044\u304b\u3068\u601d\u3044\u307e\u3059\u3002\u79c1\u306f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u305f\u3073\u306b verify \u3057\u3066\u307e\u3059\u3002<\/p>\n<h3>CMake\u7b49\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h3>\n<pre><code>$ sudo apt install g++ cmake pkg-config libssl-dev libncurses5-dev gdb\n<\/code><\/pre>\n<p>\u3072\u3087\u3063\u3068\u3057\u305f\u3089\u306a\u306b\u304b\u30d1\u30c3\u30b1\u30fc\u30b8\u8db3\u308a\u306a\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u304c\u3001\u5c11\u306a\u304f\u3068\u3082\u3053\u306e\u3042\u305f\u308a\u306f\u5fc5\u9808\u3067\u3059\u3002<\/p>\n<h3>CMake<\/h3>\n<pre><code>$ cd ~\/src\/mysql\/mysql-8.0.25\n$ mkdir bld\n$ cd bld\n$ cmake .. -DWITH_DEBUG=1 -DWITH_BOOST=..\/boost\n<\/code><\/pre>\n<p>2021\u5e745\u6708\u73fe\u5728\u3001<a href=\"https:\/\/bugs.mysql.com\/bug.php?id=103680\">cmake\u306eDOWNLOAD_BOOST\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6a5f\u80fd\u3057\u306a\u3044\u554f\u984c<\/a>\u304c\u3042\u308a\u307e\u3059\u3002<a href=\"https:\/\/bugs.mysql.com\/bug.php?id=103611\">MySQL8.0.26\u3067\u4fee\u6b63\u3055\u308c\u308b<\/a>\u3088\u3046\u3067\u3059\u3002<\/p>\n<p>\u79c1\u306f\u81ea\u5206\u3067MySQL\u30d3\u30eb\u30c9\u3059\u308b\u3068\u304d\u306f Generic Linux (Architecture Independent), Compressed TAR Archive\u3092\u4f7f\u3063\u3066 -DDOWNLOAD_BOOST=1 \u3057\u3066\u304a\u308a\u3001 OpenGrok\u3067indexing\u3059\u308b\u3068\u304d\u306f\u3001Generic Linux (Architecture Independent), Compressed TAR Archive<br \/>\nIncludes Boost Headers\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u305f\u3093\u3067\u3059\u304c\u30018.0.26\u307e\u3067\u306fIncludes Boost Headers\u306atar ball \u3092\u4f7f\u304a\u3046\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>8.0.26 \u4ee5\u964d\u3067\u306f<\/p>\n<pre><code>$ cmake .. -DWITH_DEBUG=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=~\/src\/boost\n<\/code><\/pre>\n<p>\u3067\u826f\u3044\u3067\u3057\u3087\u3046\u3002<\/p>\n<h3>make<\/h3>\n<p>\u3053\u3053\u306f\u6ce8\u610f\u3057\u305f\u307b\u3046\u304c\u826f\u3044\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002<\/p>\n<pre><code>$ make -j 4\n<\/code><\/pre>\n<p>cmake\u53e9\u3044\u305f\u3089\u3042\u3068\u306f make -j \u3059\u308c\u3070\u3044\u3044\u3093\u3067\u3059\u304c\u3001 MySQL 8.0 \u304b\u3089\u3001\u30d3\u30eb\u30c9\u306b\u30e1\u30e2\u30ea\u3092\u304b\u306a\u308a\u98df\u3046\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002\u4f8b\u3048\u3070\u3001\u30e1\u30e2\u30ea32GB\u7a4d\u3093\u3060\u79c1\u7269\u306eMacBook Pro 16inch\u3067\u4f55\u3082\u8003\u3048\u305a\u306b make -j \u3059\u308b\u3068\u3001\u30b9\u30ef\u30c3\u30d7\u4f7f\u3046\u304f\u3089\u3044\u30e1\u30e2\u30ea\u98df\u3044\u307e\u3059\u3002WSL2\u4e0a\u3067\u30d3\u30eb\u30c9\u3059\u308b\u5834\u5408\u306f\u3001\u5272\u308a\u5f53\u3066\u3089\u308c\u308b\u30e1\u30e2\u30ea\u304c\u305d\u3053\u305d\u3053\u9650\u5b9a\u3055\u308c\u3066\u3044\u308b\u3067\u3057\u3087\u3046\u304b\u3089\u3001 make -j 4 \u3068\u304b -j 2 \u304f\u3089\u3044\u3067\u69d8\u5b50\u898b\u3057\u3066\u3001OOM Killer \u304c\u767a\u52d5\u3057\u306a\u3044\u304b\u78ba\u8a8d\u3057\u3064\u3064\u30d3\u30eb\u30c9\u3055\u308c\u308b\u306e\u304c\u3088\u308d\u3057\u3044\u304b\u306a\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<h3>mysqld --initialize<\/h3>\n<p>\u3068\u308a\u3042\u3048\u305a gdb \u3067\u52d5\u304b\u305b\u308c\u3070\u826f\u3044\u3084\u3068\u3044\u3046\u3053\u3068\u3067\u3001\u6700\u5c0f\u9650\u306e\u521d\u671f\u5316\u3060\u3051\u3084\u3063\u3066\u3057\u307e\u3044\u307e\u3059\u3002<\/p>\n<pre class=\"lang:default decode:true \" >\n$ cd ~\/src\/mysql\/mysql-8.0.25\/bld\n$ mkdir {etc,data}\n$ echo '[mysqld]' &gt; etc\/my.cnf\n$ echo \"basedir=`pwd`\" &gt;&gt; etc\/my.cnf\n$ echo \"datadir=`pwd`\/data\" &gt;&gt; etc\/my.cnf\n$ bin\/mysqld --defaults-file=etc\/my.cnf --initialize\n<\/pre>\n<p>root\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u3001\u521d\u671f\u5316\u6642\u306e\u30ed\u30b0\u306b\u51fa\u529b\u3055\u308c\u307e\u3059\u3002\u521d\u671f\u5316\u304c\u7d42\u308f\u3063\u305f\u3089<\/p>\n<pre class=\"lang:default decode:true \" >\n$ .\/bin\/mysqld --defaults-file=etc\/my.cnf &amp;\n$ .\/bin\/mysql -u root -p\n<\/pre>\n<p>\u3067\u30ed\u30b0\u30a4\u30f3\u3067\u304d\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3001<a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/ja\/set-password.html\">SET PASSWORD<\/a>\u3067\u9069\u5f53\u306a\u30d1\u30b9\u30ef\u30fc\u30c9\u306b\u5909\u66f4\u3059\u308b\u306a\u3069\u3057\u3066\u3001<a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/en\/shutdown.html\">SHUTDOWN<\/a>\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<p>\u4f59\u8ac7\u3067\u3059\u304c\u3001\u4ee5\u524d\u306f\u3001\u30c7\u30d0\u30c3\u30b0\u30d3\u30eb\u30c9\u3057\u305f mysql client \u3092 WSL2 \u4e0a\u3067\u8d77\u52d5\u3059\u308b\u3068 segfault \u304c\u8d77\u304d\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u3055\u3044\u304d\u3093\u306f\u305d\u3046\u3044\u3063\u305f\u3053\u3068\u3082\u306a\u304f\u306a\u308a\u307e\u3057\u305f\u3002\u3082\u3057\u3001\u304a\u624b\u5143\u306e\u74b0\u5883\u3067\u30d3\u30eb\u30c9\u3057\u305f mysql client \u304c segfault \u3059\u308b\u3088\u3046\u306a\u3089\u3001 Ubuntu\u4ed8\u5c5e\u306e mysql client \u3092<\/p>\n<pre><code>$ sudo apt install mysql-client\n<\/code><\/pre>\n<p>\u3057\u3066\u3001\u305d\u3061\u3089\u3092\u4f7f\u3063\u3066\u3044\u305f\u3060\u304f\u3068\u3088\u3044\u304b\u3082\u3067\u3059\u3002<\/p>\n<p>\u3042\u308b\u3044\u306f\u3001\u3055\u3044\u304d\u3093\u306e WSL2 \u306f <a href=\"https:\/\/docs.microsoft.com\/ja-jp\/windows\/wsl\/wsl-config#wsl-2-settings\">localhostForwarding<\/a>\u3067 <a href=\"https:\/\/devblogs.microsoft.com\/commandline\/whats-new-for-wsl-in-insiders-preview-build-18945\/\">Windows \u304b\u3089\u76f4\u63a5\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b<\/a>\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u304b\u3089\u3001 <a href=\"https:\/\/dev.mysql.com\/downloads\/installer\/\">MySQL Installer<\/a>\u3067Windows\u7528\u306eMySQL Client\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u3001Windows\u304b\u3089\u53e9\u304f\u306e\u3082\u826f\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u306d\uff08\u8a66\u3057\u3066\u306a\u3044\u3067\u3059\u3051\u3069\uff09<\/p>\n<p>\u3042\u3068\u306f<\/p>\n<pre><code>$ cd ~\/src\/mysql\/mysql-8.0.25\n$ code .\n<\/code><\/pre>\n<p>\u3067 Visual Studio Code \u3092\u8d77\u52d5\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3>c_cpp_properties.json, launch.json<\/h3>\n<p>IntelliSense \u3092\u6d3b\u7528\u3059\u308b\u305f\u3081\u306b\u3001c_cpp_properties.json \u3067 includePath \u3084 defines \u306e\u8a2d\u5b9a\u3092\u3057\u305f\u308a\u3001 Visual Studio Code \u304b\u3089 gdb \u7d4c\u7531\u3067 mysqld \u3092\u8d77\u52d5\u3059\u308b\u305f\u3081\u306b\u3001 launch.json \u306e\u8a2d\u5b9a\u3092\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u79c1\u306f\u6700\u5c0f\u9650\u306e\u8a2d\u5b9a\u3068\u3057\u3066\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<pre><code>$ cat .vscode\/c_cpp_properties.json\n{\n    \"configurations\": [\n        {\n            \"name\": \"Linux\",\n            \"includePath\": [\n                \"${workspaceFolder}\/bld\/include\",\n                \"${workspaceFolder}\/**\"\n            ],\n            \"defines\": [\n                \"MUTEX_EVENT=1\",\n                \"MYSQL_SERVER=1\",\n                \"ENABLED_DEBUG_SYNC=1\"\n            ],\n            \"compilerPath\": \"\/usr\/bin\/gcc\",\n            \"cStandard\": \"gnu17\",\n            \"cppStandard\": \"gnu++14\",\n            \"intelliSenseMode\": \"linux-gcc-x64\"\n        }\n    ],\n    \"version\": 4\n}\n$\n<\/code><\/pre>\n<pre><code>$ cat .vscode\/launch.json\n{\n    \/\/ Use IntelliSense to learn about possible attributes.\n    \/\/ Hover to view descriptions of existing attributes.\n    \/\/ For more information, visit: https:\/\/go.microsoft.com\/fwlink\/?linkid=830387\n    \"version\": \"0.2.0\",\n    \"configurations\": [\n        {\n            \"name\": \"(gdb) Launch\",\n            \"type\": \"cppdbg\",\n            \"request\": \"launch\",\n            \"program\": \"${workspaceFolder}\/bld\/bin\/mysqld\",\n            \"args\": [\"--defaults-file=${workspaceFolder}\/bld\/etc\/my.cnf\"],\n            \"stopAtEntry\": false,\n            \"cwd\": \"${workspaceFolder}\",\n            \"environment\": [],\n            \"externalConsole\": false,\n            \"MIMode\": \"gdb\",\n            \"setupCommands\": [\n                {\n                    \"description\": \"Enable pretty-printing for gdb\",\n                    \"text\": \"-enable-pretty-printing\",\n                    \"ignoreFailures\": true\n                }\n            ]\n        }\n    ]\n}\n$\n<\/code><\/pre>\n<p>defines \u306e\u8a2d\u5b9a\u3092\u3059\u308b\u306e\u304c\u3001 Visual Studio \u3068\u6bd4\u3079\u3066\u3084\u3084\u3081\u3093\u3069\u304f\u3055\u3044\u304b\u306a\u3041\u3068\u601d\u3046\u3068\u3053\u308d\u3067\u3059\u3002<\/p>\n<p>\u307e\u3041\u3053\u306e\u3078\u3093\u306f\u6bce\u56de\u30b3\u30d4\u30da\u3067\u826f\u3044\u304b\u306a\u3068\u601d\u3044\u307e\u3059\u306e\u3067\u3001\u6b21\u306b MySQL 8.0.26 \u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u305f\u3089<\/p>\n<pre><code> $ cp -a ~\/src\/mysql\/mysql-8.0.25\/.vscode ~\/src\/mysql\/mysql-8.0.26\/\n<\/code><\/pre>\n<p>\u3068\u3044\u3046\u611f\u3058\u3067\u4f7f\u3044\u307e\u308f\u3057\u3066\u3044\u304f\u3064\u3082\u308a\u3067\u3059\u3002<\/p>\n<p>\u3042\u3068\u306f\u30e1\u30cb\u30e5\u30fc\u306e Run -> Start Debugging \u3067\u666e\u901a\u306b\u30c7\u30d0\u30c3\u30b0\u3067\u304d\u307e\u3059\u3002<\/p>\n<h2>\u304a\u308f\u308a\u306b<\/h2>\n<p>Windows\u4e0a\u3067 Visual Studio Code \u304b\u3089 GUI \u3067 mysqld \u306e\u30c7\u30d0\u30c3\u30b0\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\u3001\u753b\u671f\u7684\u306b\u4fbf\u5229\u306b\u306a\u3063\u305f\u306a\u3041\u3068\u3001\u500b\u4eba\u7684\u306b\u306f\u611f\u3058\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\u3057\u3054\u3068\u3057\u3066\u308b\u3068\u3001\u305f\u307e\u306b MySQL \u306e\u6319\u52d5\u3092\u78ba\u8a8d\u3057\u305f\u3044\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3088\u306d\u3002SQL\u306esyntax\u7684\u306a\u3068\u3053\u308d\u306f <a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/ja\/docker-mysql-getting-started.html\">\u516c\u5f0f\u306e docker image<\/a>\u3067\u3059\u3050\u306b\u8a66\u305b\u307e\u3059\u304c\u3002<\/p>\n<p>\u30c7\u30d0\u30c3\u30ac\u3067\u3061\u3087\u308d\u3063\u3068\u8ffd\u3044\u304b\u3051\u305f\u3044\u3068\u304d\u306f\u3001\u4ee5\u524d\u306f Mac\u3067 Visual Studio Code \u304b\u3089\u30c7\u30d0\u30c3\u30ac\u3067\u52d5\u304b\u3057\u305f\u308a\u3057\u3066\u307f\u305f\u3093\u3067\u3059\u304c\u3001\u3053\u308c\u304b\u3089\u306f\u3001\u308f\u308a\u3068 WSL2 \u4e0a\u3067\u305d\u3046\u3044\u3063\u305f\u3053\u3068\u3082\u3067\u304d\u305d\u3046\u3060\u306a\u3041\u3068\u601d\u3046\u306a\u3069\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3053\u3093\u306b\u3061\u308f\u3002\u305b\u3058\u307e\u3067\u3059\u3002\u4eca\u56de\u3082\u3086\u308b\u3075\u308f\u3067\u3059\u3002 \u306f\u3058\u3081\u306b \u968f\u5206\u524d\u306e\u8a71\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u304c\u3001Windows 10 20H1 \u3067 WSL2 \u304c\u6b63\u5f0f\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u3001\u3057\u3054\u3068\u3067Linux\u4f7f\u3063\u3066\u308b\u4eba\u305f\u3061\u306b\u3068\u3063\u3066\u3001 Windows \u306f\u304b [&hellip;]<\/p>\n","protected":false},"author":137,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[9],"tags":[17],"class_list":["post-21192","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-info","tag-mysql"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/posts\/21192","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/users\/137"}],"replies":[{"embeddable":true,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/comments?post=21192"}],"version-history":[{"count":3,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/posts\/21192\/revisions"}],"predecessor-version":[{"id":21221,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/posts\/21192\/revisions\/21221"}],"wp:attachment":[{"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/media?parent=21192"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/categories?post=21192"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/labs.gree.jp\/blog\/wp-json\/wp\/v2\/tags?post=21192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}