【Linux】mysqlをセットアップしたら躓いたので

忘れないようにメモしておく。

MySQLのインストール

$ sudo apt-get install mysql-server

rootパスワード設定

$ sudo mysql_secure_installation

問い合わせはすべてyを入力。

rootでログインを確認

$ sudo mysql -u root -p

MySQLにユーザーを追加

mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'password'

ユーザーに権限を設定

mysql> GRANT all ON *.* TO 'user'@'localhost'

Hyper-Vで仮想マシンにLinuxを動かす

そういえば、今使っているPCのWindows10がProなので、デフォで仮想環境が使える、と言うことに気がついたので。

これを使えば、VMwareとか、Virtual Boxとか使わなくても仮想環境を構築することができる。

参考にしたサイトはこちら。(Microsoftのヘルプページ)

https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

Hyper-Vを有効にして、Hyper-Vマネージャーから仮想マシンを作成すると、すでにUbuntu18.04のテンプレートが用意されているので、これを選択すると、自動的にisoイメージのダウンロード、インストールまで完了します。

注意するところは、リモートデスクトップで接続しないこと。

そりゃそうだ。インストール直後のUbuntuはリモートデスクトップを許可していないので。接続できるはずがありません。

リモートデスクトップ接続をキャンセルすれば、仮想マシンのデスクトップを直で表示されます。

ただ、このままだと、画面解像度的に使いづらいので、解像度の設定を書き換えます。

参考にしたサイトはこちら。(Qiita)

https://qiita.com/mizutoki79/items/6122455bfa2755942488

$ sudo vi /etc/default/grub

で設定ファイルを開いて、以下のように書き換えます。

GRUB_CMDLINE_LINUX_DEFAULTの行にvideo=hyperv_fb:[変更したい解像度]を書き足します。

1920×930程度にしておけば、フルHDのデスクトップにちょうど収まります。

そして以下のコマンドで設定を反映。

$ sudo update-grub

間違えてFedoraのコマンドを使用すると起動不能になる。(やらかした)

使ってみた感じでは、非常に快適です。

これなら本当にVMwareとかいらないかも。

メモリも32GBと余るほどあるので、半分の16GBをHyper-Vに割り当てても余裕。

まずい、これは本当にLinux PCいらないぞ。

とりあえず、開発環境をセットアップして見ようか。

【マインクラフト】森の洋館にたどり着けなかったけど収穫はあった。

森の洋館に向けてエリトラで飛行したんですが、

右上よりさらに上に行ったところで、エリトラの耐久値が無くなり、ロケット花火も無くなったので、到達断念。

拠点に死に戻りしました。

でも、収穫はあった。

まず、メサバイオームを見つけました。

そして、魔女の家(たぶん)

ネザートンネルで繋げたいけど、アップデートを控えているので、今はあまりネザーを拡張したくは無いです。

まぁ、後々ということで。

【このファン】このすばファンタスティックデイズでスタートダッシュ決めたった。

スタートダッシュとしてはまずます、といったところだろうか。

リセマラはやってません。

リセマラに時間使うよりも、クエスト回って無料石稼いでガチャ引いて、★3の頭数をそろえたほうが序盤では有利になります。

なので、イベント開始直後には★3の聖属性3人を優先して、最大まで限界突破させました。

★4を最大まで強化させるにはハードルが高いので、★4を育てるよりも★3を育てたほうが強いパーティを作りやすいです。序盤では。

おかげさまで、イベントボスは上級は3戦で、中級は2戦で撃破できるようになりました。

レアアイテムもある程度回収できました。

ここからは★4の強化も少しずつ進めて、バトルアリーナ上級にも挑めるまで強くしたいですね。

あと、装備も強くしなくちゃ。

【数独】まだまだ完成には程遠いみたい。

ナンプレアプリの問題を、数独解析プログラムに与えて、とけるかどうかを確認しているのですが、

難易度★4ならば、数独解析プログラムで解ける様になりましたが、難易度★5の中には、解けない問題があるようです。

赤いところが誤りの箇所です。

一応、解析途中の内容もアウトプットとして出力しているのですが、いまのままではちょっと解けない理由がわからないんですよね。

ちょっと出力処理に手を加えないと、解析が難しいです。

具体的にどうするかはこれから考えます。

まぁ、★4クリアできたからある程度満足ではあるけれども。

プログラマーはエラー処理に頭を悩ませる。

プログラムというのは、目的通りに動いていればいい、という訳ではありません。

目的通りに動かすのは「当たり前」で、それ以上に頭を悩ませるのがエラー処理なんです。

具体的には、なんらかの要因で正しい処理が行えなくなった場合でも、正しい状態を保つ、ということをプログラミングしなければなりません。

前者が「正常系」と呼ぶのに対し、後者は「準正常系」と呼んでいました。

ちなみに、それ以外の深刻な問題が発生したときは「異常系」と呼んで、オペレーターに異常を知らせる処理を実行します。主にハードウェアの故障などがこれに該当します。

準正常系は、入力データの異常や割り込み処理などが該当します。

ソフトウェア設計者は、こういった準正常系の処理を全て網羅して、あらかじめエラーを検出し、本来の正常な動作を保つように設計しなければなりません。

設計者が頭を悩ませるのが、「準正常系に漏れが無いよね?」ということなんです。

我々がニュースなどで耳にする「ソフトウェアの異常」というのは、大抵、準正常系の考慮が漏れていたことに起因します。

そして、本番でこういうことが起きないように、出荷前に様々なテストデータを用意して、徹底的にいじめます。

特に組み込み系のファームウェアは、簡単にアップデートできないので、出荷から当分の間はヒヤヒヤします。

トラブルがあったら現場大炎上なので。

では、どうすれば良いかというと、これも難しい話で、経験を積み重ねるしか無いんですよ。

ベテラン技術者にレビューして貰うのも一つの手です。

まぁ、ソフトウェア製品の開発にはこんな事があるんですよ、ということで理解して貰えれば。

【防災】3.11から9年。災害対策できてますか?

まぁ、3.11のような規模の災害は当分起きないとは思いますが、用心するに越したことはないので。

オイラは、北海道胆振東部地震をきっかけに、少しずつ災害対策を始めました。

具体的には、ライフライン(電気、ガス、水道)が無くても、数日は耐えられるように、と想定しています。

電池で動く携帯ラジオ。

停電で電気が使えないとなると、最も頼りになる情報元は地域のラジオです。

スマホのradikoではダメですよ!

基地局がバッテリー切れしたらインターネットもできなくなりますからね!

小型のコンロ。

燃料。

中型の焚き火台。

この上でお湯も沸かせます。

燃料となる薪も少し用意しています。

乾電池で動くLEDランタン。

念のため、ガスコンロも用意しています。

LOHACOで買ったお水。

こっちの方が長期保存ができます。

食料は、今、カップラーメンを発注しています。

これだけあれば、ちょっとしたキャンプぐらいできそうです。

それともう一つ、

これらのアイテムは持っているだけではダメで、きちんと動くことを定期的に確認することも大事。

買ったは良いけど使い方がわからない、なんて事が無いように、点検しておくべき。

軽く、デイキャンなんてどうですかね?

北海道はまだ無理だけど、暖かくなったらデイキャンなんて良いかもしれません。

結局はやってみないと、いざというときに使い物にならないわけで。

これを機に点検してみてはいかがでしょう。

【C#】【数独】仮置きロジック簡略化の修正を元に戻した。

前回までの状況はこちら。

最新ソースはこちら(gitHub)

https://github.com/takishita2nd/sudoku

修正を戻したのは、重大な欠陥に気がついたためです。

仮置きロジックを再起実行させたときに矛盾を検出した場合、正しく処理されない、という動きが発生していました。

やはり、面倒でも、仮置きロジックを再起処理から全てリターンして、値を一つずつ確定していくのが一番良い方法だと思います。

このコードでもう少し問題を解いてみます。

そして、最高難度の問題でも解けるかを確認していきたいと思います。

自分、ぼっちですが何か?