年: 2021年

  • MySQL Workbench をインストールしようとしたら、Visual Cのランタイムがなくてエラーになった

    MySQL Workbench 8.0CE をインストールしようとしたら、Visual Cのランタイムコンポーネントがなくてエラーになった。

    MySQL Workbench requires the Visual C++ 2019  
    Redistributable Package to be installed. Click the 
    Download-Button on the next page to open a web 
    page containing further instructions.

    下記のMicrosoftのサイトから、「Microsoft Visual C++ Redistributable for Visual Studio 2022」のパッケージをダウンロード。

    https://visualstudio.microsoft.com/ja/downloads/

    ダウンロードができたら、実行して、インストールする。パッケージには、Visual C++ 2015~2022までが入っているので、2019が含まれている。

    Visual C++のランタイムのインストールが終わってから、MySQL Workbenchのインストールを再実行し、インストールに成功した。起動もできるし、無事に使えている。

  • お名前.comのVPSメンテナンスにハメられた話

    お名前.comのVPSを利用しているのだが、ここ数ヶ月でメンテナンスが多発している。VPSの基盤を入れ替えているためのようだが、このメンテナンスがなかなかひどい。

    最初のメンテナンスで、平日の日中に長時間の停止が発生した。そのあとは、VPSに接続できなかったりすることが多発していた。とても、パフォーマンスが悪く、ひどい有様だった。

    そして昨日に行われた緊急メンテナンスも、ひどかった。当然のように日中に行われているし、停止時間は30分で再起動が発生するという告知はあった。サーバとの疎通が切れてから、数時間がたっても、疎通がとれない。メンテナンス時間の間なので、待つしかない。メンテナンスの終わりの時間になっても、VPSとの疎通はとれず。管理コンソールから確認すると、OSは起動していた。だが、ネットワークに繋がっていない状態だった。それで確認すると、DHCPでアドレスが取れない場合があるとのこと。とりあえず、OSを再起動したが状況は変わらなかった。

    1つ1つ、OSの状況を確認していくと、ネットワークインターフェース(NIC)の認識されている名前が変わっていることを発見した。そんなことは、通知には書いていなかった。NICが変わっているので、ネットワークの設定が有効にならず、ネットワークから切り離されていた。VPSの管理画面をみても、NICのことは書かれていない。仕方無いので、NICのem0を消して、ifconfigで表示されたvtnet3に対して、割り振られているIPアドレスの設定をした。これで、VPSがネットワークに接続できるようになった。

    結局、ダウンタイムは6時間以上になった。メンテナンスにしても、サーバOSを扱っているわけで、このメンテナンスはひどい。お名前.comのVPSは品質悪い。別のVPSに乗り換えることも検討しないといけないと感じた。

  • ランチ:赤坂 武蔵のしゃぶしゃぶ(2021/12/15)

    2021年12月15日のランチ。寒くて、体調も優れなかったので、温かいしゃぶしゃぶにしてみた。

    武蔵の昼の混雑も復活しており、結構、ならんでいる人がいた。おいしかったのだけど、待っている間に頭痛がひどくなり、なかなか大変だった。体調のよいときに、もう一度行こう。

  • Log4Jの脆弱性はNHKニュースでも取り上げられたのね。

    Log4Jの脆弱性(Log4Shell)は、NHKニュースのおはよう日本で取り上げられたようだ。

    https://www3.nhk.or.jp/news/html/20211214/k10013387051000.html

    これをみて、慌てて指示を出す会社の上層部とか多そうだ。日頃は関心のない層がみることで、いい方向で変わるといいのだけど。逆に現場をせめて、愛想つかされて、技術者が退職するというパターンもありえそうだが。

  • 新しくインストールしたUbuntuでNginxが起動しない

    新しくUbuntuをインストールして、NginxやPHPをインストールした。Nginxを起動させようとしたところ、エラーで起動せず。

    zen@dev:/etc/nginx/sites-available$ sudo service nginx start
    Job for nginx.service failed because the control process exited with error code.
    See "systemctl status nginx.service" and "journalctl -xe" for details.
    zen@dev:/etc/nginx/sites-available$
    zen@dev:/etc/nginx/sites-available$ sudo systemctl status nginx.service
    ● nginx.service - A high performance web server and a reverse proxy server
         Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset:>
         Active: failed (Result: exit-code) since Wed 2021-11-17 16:13:11 JST; 2min>
           Docs: man:nginx(8)
        Process: 294747 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_pro>
        Process: 294758 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; >
    Nov 17 16:13:08 dev systemd[1]: Starting A high performance web serve>
    Nov 17 16:13:08 dev nginx[294758]: nginx: [emerg] bind() to 0.0.0.0:8>
    Nov 17 16:13:09 dev nginx[294758]: nginx: [emerg] bind() to 0.0.0.0:8>
    Nov 17 16:13:09 dev nginx[294758]: nginx: [emerg] bind() to 0.0.0.0:8>
    Nov 17 16:13:10 dev nginx[294758]: nginx: [emerg] bind() to 0.0.0.0:8>
    Nov 17 16:13:10 dev nginx[294758]: nginx: [emerg] bind() to 0.0.0.0:8>
    Nov 17 16:13:11 dev nginx[294758]: nginx: [emerg] still could not bin>
    Nov 17 16:13:11 dev systemd[1]: nginx.service: Control process exited>
    Nov 17 16:13:11 dev systemd[1]: nginx.service: Failed with result 'ex>
    Nov 17 16:13:11 dev systemd[1]: Failed to start A high performance we>
    zen@dev:/etc/nginx/sites-available$

    エラーを見ると、ポートのバインドに失敗している。もしやと思って調べると、Apacheがいて、ポート80で起動していた。Apacheを終了させると、無事にNginxを起動させることができた。

    aptでいろいろとインストールしていると、いつのまにかapache がいて邪魔をする。初歩的なミスだけど、よくやらかす。

  • .NET6で、gitignoreを生成する

    .NET6SDKがインストールされていれば、コマンドを実行するだけでgitignoreを生成できる。

    プロジェクトの状況を見ているわけではなく、テンプレートを生成してくれるだけなので、後から実態に合わせて編集する必要はある。それから、空のフォルダ上でも、”.gitgnore”は生成できる。

    PS C:\Dev\test> dotnet new gitignore 
    .NET 6.0 へようこそ! 
    --------------------- 
    SDK バージョン: 6.0.100 
    テレメトリ 
    --------- 
    .NET ツールは、エクスペリエンスの向上のために利用状況データを収集します。データは Microsoft によって収集され、コミュニティと共有されます。テレメトリをオプトアウトするには、好みのシェルを使用して、DOTNET_CLI_TELEMETRY_OPTOUT 環境変数を '1'  または 'true' に設定できます。 
    .NET CLI ツールのテレメトリの詳細をご覧ください: https://aka.ms/dotnet-cli-telemetry 
    ---------------- 
    ASP.NET Core の HTTPS 開発証明書をインストールしました。 
    証明書を信頼するには、'dotnet dev-certs https --trust' (Windows および macOS のみ) を実行します。 
    HTTPS の詳細については、https://aka.ms/dotnet-https を参照してください 
    ---------------- 
    最初のアプリを作成するには、https://aka.ms/dotnet-hello-world を参照してください 
    最新情報については、https://aka.ms/dotnet-whats-new を参照してください 
    ドキュメントを探索するには、https://aka.ms/dotnet-docs を参照してください 
    GitHub で問題の報告とソースの検索を行うには、https://github.com/dotnet/core を参照してください 
    'dotnet --help' を使用して使用可能なコマンドを確認するか、https://aka.ms/dotnet-cli にアクセスしてください 
    -------------------------------------------------------------------------------------- 
    テンプレート "dotnet gitignore ファイル" が正常に作成されました。 
    PS C:\Dev\test>

    初回のみ、いろいろと表示された。コマンドの実行の2回目からは、「テンプレート “dotnet gitignore ファイル” が正常に作成されました。」とだけ表示される。

  • VS Codeの困ったところ

    Visual Studio Codeでプレーンテキストモードにしてあるのに、テキスト消したりしているうちに、勝手に、”ini”とか”Docker”とかにモードが変わってること。急に色が変わったり、別のプラグインを追加しようとしてくるので、作業が止まる。明示的に選択したんだから、そのままでいてほしい。

    対策として、VS Codeのエディタの言語の自動検出をオフにしてみた。

    1.VS Codeで設定を開く。

    2.「ワークベンチ」の「エディタ」にある「Workbench > Editor:Language Detection」を探し、チェックを外す(オフにする)。非常に探しにくいので、検索で、「Language Detection」を探したほうが早い。

    これで解消されるか、しばらく様子見する。

  • MySQLをSSLで接続するときのポート番号

    メモとして。

    MySQLデータベースに接続するとき、SSL接続のオプションを使うとき、何番ポートを使っているのか。ファイアウォールの許可などもあるので、調べてみた。

    MySQLに接続するとき、SSLのオプションをつけても、つけなくても、同じ3306番ポートを使っている。設定で3306番から変更している場合には、そのポート番号で受け付ける。

  • 2021年12月の時点でも、GASのJDBCからMySQL8.0に接続できない。

    昨年、Google App Scriptから、JDBC経由で、Google CloudのCloud SQL のMySQL 8.0のインスタンスに接続を試して、失敗した。JDBCがMySQL 8.0  に対応しておらず、接続エラーになるというものだった。

    あれから1年がたち、もう一度、試してみたが、Google App ScriptからJDBCを使って、MySQL 8.0のインスタンスに接続することはできなかった。まだ、MySQL 5.7のインスタンスまでしか対応していない。

    MySQL 5.7 のインスタンスには、GASから正常にアクセスできていることも、ついでに確認した。

  • Visual Studio 2022でテキスト整形するショートカット

    Visual Studio 2022 でテキスト整形(インデントなど)を行うためのショートカットキー。選択しているファイル全体で整形する場合は、Ctrl+K, Ctrl+Dを押す。

    Ctrl + K 
    Ctrl + D

    現在の行にみを整形する場合は、Ctrl+K, Ctrl+Fを押す。

    Ctrl + K 
    Ctrl + F