a stray sheep

お仕事周りの雑記帳

TestLink 1.9.15 to 1.9.17と、ERROR 1062 (23000) at line 67: Duplicate entry '8-30' for key 'PRIMARY'

やること

  • TestLink 1.9.15 を 1.9.17 にアップグレードする
  • その際に出たERROR 1062に対応する 

★注意★この記事で示す手順が正しいかどうかはわからない。とりあえず、エラーに対して、それとなく対応を行ってアップデートできたっぽいというだけ。

作業手順

TestLink 1.9.15のインストール

構築は、以下の記事の通り。 belial6.hateblo.jp

TestLink 1.9.17のインストール

// Apacheを停止して、既存のフォルダを退避する
sudo systemctl stop httpd
sudo mv /var/www/html/testlink /var/www/html/testlink.bak

// testlink 1.9.17のアーカイブを解凍し、配置・設定する
sudo tar zxvf testlink-1.9.17.tar.gz
sudo mv testlink-1.9.17 /var/www/html/testlink
sudo chmod -R 755 /var/www/html/testlink/gui/templates_c
sudo chown -R apache:apache /var/www/html/testlink
sudo systemctl start httpd

この後、以下のURLにアクセスすると、TestLinkの初期設定画面が表示される。アップデートする場合には、DBを更新する必要があると言われる(書かれている)ので、READMEに従ってDBの更新を行う。

http://localhost:10082/testlink/

DBスキーマの更新

// 1.9.151.9.16
cd /var/www/html/testlink/install/sql/alter_tables/1.9.16/mysql/DB.1.9.16/step1
sudo mysql -u root -p testlink < db_schema_update.sql

cd /var/www/html/testlink/install/sql/alter_tables/1.9.16/mysql/DB.1.9.16/stepZ
sudo mysql -u root -p testlink < z_final_step.sql

// 1.9.161.9.17
cd /var/www/html/testlink/install/sql/alter_tables/1.9.17/mysql/DB.1.9.17/step1
sudo mysql -u root -p testlink < db_schema_update.sql
Enter password:
ERROR 1062 (23000) at line 67: Duplicate entry '8-30' for key 'PRIMARY' ★エラー発生

// 上記のエラーが出た場合は、db_schema_update.sql ファイルを開いて、エラー箇所以降のSQL文を手動で流す。
// そこだけ別ファイルに出して、実行するのでもよい。
// 以下は、DBアクセス後、コピペして流した。

sudo mysql -u root -p testlink
MariaDB [testlink]> INSERT INTO /*prefix*/role_rights (role_id,right_id) VALUES (8,50);
MariaDB [testlink]> INSERT INTO /*prefix*/role_rights (role_id,right_id) VALUES (8,51);
MariaDB [testlink]> INSERT INTO /*prefix*/role_rights (role_id,right_id) VALUES (8,52);
MariaDB [testlink]> INSERT INTO /*prefix*/role_rights (role_id,right_id) VALUES (8,53);
MariaDB [testlink]> INSERT INTO /*prefix*/role_rights (role_id,right_id) VALUES (8,54);
MariaDB [testlink]> ALTER TABLE /*prefix*/testprojects ADD COLUMN code_tracker_enabled tinyint(1) NOT NULL default '0';
MariaDB [testlink]> ALTER TABLE /*prefix*/users ADD COLUMN creation_ts timestamp NOT NULL DEFAULT now();
MariaDB [testlink]> ALTER TABLE /*prefix*/users ADD COLUMN expiration_date date DEFAULT NULL;
MariaDB [testlink]> \q

cd /var/www/html/testlink/install/sql/alter_tables/1.9.17/mysql/DB.1.9.17/stepZ
sudo mysql -u root -p testlink < f_final_step.sql

再度、以下のURLにアクセスして初期設定を行う。初期設定後、ログイン画面にアクセスでき、admin/adminでログインできればOK。

http://localhost:10082/testlink/

以上

TestLink 1.9.15 + CentOS7

環境

環境構築

Vagrantの準備

  • Vagrantifleは、ポート転送設定をしておく(host: 10082→guest: 80)

以下は、vagrantVMを作成し、vagrant ssh してから実施

// SELINUX無効
$ sudo setenforce 0

// Apacheのインストール
$ sudo yum install -y httpd httpd-devel

// PHP7のインストール
$ sudo yum install -y epel-release
$ sudo yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
$ sudo yum install -y --enablerepo=epel,remi,remi-php74 php php-devel php-mbstring php-gd php-ldap php-mysql

// MariaDB 10.3 のインストール
$ sudo curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=mariadb-10.3
$ sudo yum install -y MariaDB-server MariaDB-client
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

// MariaDBの初期設定  -- rootユーザーのパスワード以外はすべて何も入力せず、Enterで良い。
$ sudo mysql_secure_installation
Enter current password for root (enter for none):
Set root password? [Y/n]
New password: ★rootユーザのパスワードを設定★
Re-enter new password: ★rootユーザのパスワードを再入力★
Remove anonymous users? [Y/n]
Disallow root loing remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]

// MariaDBへのアクセス確認
$ sudo mysql -u root -p
Enter password: ★初期設定で設定したrootユーザのパスワードを入力
MariaDB [(none)]> \q

// TestLinkのインストール
$ sudo tar zxvf testlink-1.9.15.tar.gz
$ sudo mv testlink-1.9.15 /var/www/html/testlink
$ sudo chmod -R 755 /var/www/html/testlink/gui/templates_c
$ sudo mkdir -p /var/testlink/logs
$ sudo mkdir -p /var/testlink/upload_area
$ sudo chmod -R 777 /var/testlink
$ sudo chown -R apache:apache /var/www/html/testlink

// Apacheの起動
$ sudo systemctl start httpd
$ sudo systemctl enable httpd

ブラウザからの設定

  • http://localhost:10082/testlink にアクセス
  • [New installation]をクリックして、次へ
  • ライセンス条項にチェックを付けて同意して、[Continue]をクリック
  • [Continue]をクリックして次へ
  • データベースへの接続では、以下を設定・入力し、[Process TestLink Setup!]をクリック
  • DBの設定が終わったら、[TestLink (using login name: admin / password: admin -Please Click Me!)] をクリック
  • TestLinkのログイン画面が表示されるので、admin/adminでログインする。

DP-900: Microsoft Azure Data Fundamentals を受験してみた。⇒合格できました

AZ-900に続き、Azure Data Fundamentalsにチャレンジしました。そして、合格できました。

試験と結果

  • 試験日:2021年6月30日
  • 試験結果:844点(合格)
  • 問題:49問

私のスキルレベル

  • パブリッククラウド未経験(当然Azure触ったことなし)
  • AZ-900に1週間前に合格
  • 仮想化基盤(HyperV+MSFC)の構築・運用経験あり
  • データベースは、10年以上前にちょっとかじりました。StatspackとかAWRとか・・・。

勉強

  • 勉強期間:10日間程度
  • やったこと
    1. Azure Training Days: Azure Data Fundamentals への参加
    2. Microsoft Learn で学習(1週間がんばりましたが、時間がなく最後の方は流してました・・・)

所感

はじめにAzure Training Days: Azure Data Fundamentals で学びました。これは単にスケジュールの都合です。

その後はAZ-900の方に時間を割いたためDataの勉強は手付かずでしたが、先週AZ-900に合格できたのでLearnでの勉強を始めました。LearnのボリュームがAZ-900に比べると少なめだったので、頑張れました。

時間がなく演習には手を付けませんでしたが、すべてやっておくと合格に近づけると思います。また、試験申し込みのときに見つけられる「模擬試験」も やってみて、わからなかった部分を整理しておくのはおすすめです。実際に直前に確認して役に立ちました。

今回のテストは、AZ-900よりもかなり簡単でした。ランダムで出題されるのでラッキーだった部分もあると思いますが、システム開発経験やデータベースの基本的な知識があれば、ある程度は取れると思います。

AZ-900: Microsoft Azure Fundamentals を受験してみた。⇒合格できました

Azure Fundamentalsの試験になんとか合格できました。

試験と結果

  • 試験日:2021年6月23日
  • 試験結果:775点(合格)
  • 問題:43問

私のスキルレベル

  • パブリッククラウド未経験(当然Azure触ったことなし)
  • 仮想化基盤(HyperV+MSFC)の構築・運用経験あり

勉強

  • 勉強期間:1か月程度(日々少しずつ・・・)
  • やったこと
    1. Microsoft Learn で学習(1つ1つやっていったので、かなり大変でした。最後の方は流してました・・・)
    2. Azure Training Days: Azure Fundamentals への参加
    3. Microsoft Azure Fundamentals テキスト&問題集(通称、Azure対策本?)の実施

所感

私はMicrosoft Learnから始めましたが、量が多いので、覚えたり、続けるのは結構大変でした。

初学者はまずは対策本で概要・用語をつかむのが良いと思いました。そして、章末問題、模擬試験で、ある程度の知識を定着させてから、Microsoft Learnへ。

基本的な知識があれば、Microsoft Learnも理解しやすいと思います。Microsoft Learnでは演習があり、実際にAzureを触ることができます。基本的に、演習でやる内容以外のサービス等にはアクセス権はない(はず)ですが、いろいろなサービスを表示させてみるだけでも役に立つと思います。

試験では、Azure対策本には書かれていないサービスだったり、本には書かれていないかなり細かい知識を問う問題などが出題されました。 Microsoft Learnで広く抑えておいた結果、なんとか合格できたのかなと思います。

Jupyter Lab環境の構築

環境

  • vagrant
  • CentOS7.9 + Python3 + venv + Jupyter Lab

環境構築

Vagrantの準備

  • Vagrantifleは、ポート転送設定をしておく(host: 8888→guest: 8888)

以下は、vagrantVMを作成し、vagrant ssh してから実施

$ sudo yum install -y python3
$ python3 -V
Python 3.6.8

// 仮想環境の作成 (1)sudoを使わないこと
$ python3 -m venv vjuplab
$ cd vjuplab
$ source bin/activate
(vjuplab)[.. vjuplab]$ pip3 install jupyterlab
(vjuplab)[.. vjuplab]$ jupyter lab --ip=0.0.0.0
→ImportError: cannot import name 'StaticModule' (2)エラーが出る。よく出る。

// 別の仮想環境を作成
(vjplab)[.. vjplab]$ jupyter lab --ip=0.0.0.0
→起動できました。

(★1)sudoを使うと、venvがrootユーザで作られる。そうすると、仮想環境内でpip install時に権限エラーが発生したりする。これに、sudo pip とすると、仮想環境ではなくroot環境(仮想の外側)にパッケージ等がインストールされてしまう。

(★2)このエラーの理由は不明・・・。ただ、別の仮想環境を作って、同じように構築すると今度はうまくいく!!ことが多い。

あとは、ブラウザで「http://localhost:8888/」にアクセスして、Jupyter Labの画面が表示されることを確認する。

ドコモ光のプロバイダをGMOとくとくBBに変更してみた

X日、プロバイダ変更の連絡

  1. ドコモインフォメーションセンターに電話
    • ドコモユーザーなので、151 に電話
    • 714とプッシュ(案内が始まったらすぐに押して良し)
    • ネットワーク暗証番号を聞かれるので、プッシュ
    • あとは、ひたすら待つ!!! ※午前中はつながらず・・・。夕方つながった。
  2. プロバイダ変更したいっていう
    • 変更するプロバイダを伝える
    • 切り替え希望日を伝える(10日後から指定できる)

X+2日後、GMOとくとくBBから、SMSが届く

  • SMSから、レンタルルータ―の申込を行った

X+3日後、GMOから確認の電話が来る。

  • 契約の確認の電話。不明点があれば相談できる。
  • かかってきた番号は、03-6304-0505

そこで話をしていると、現在契約中のプロバイダでv6プラスの解約処理が終わってから、GMO側でv6プラスの開通処理を行う。 それができてからWi-Fiルータを送る、という話。 ただ、事前にWi-Fiルータ欲しければ、GMOとくとくBBお客様センターに連絡してくれ、とのこと。

GMOとくとくBBお客様センターに電話して、Wi-Fiルータを送ってと依頼 ※ナビダイヤルでお金がかかるので注意

X+5日後、Wi-Fiルータ到着

X+10日後、前のプロバイダから解約メールを受領

  • この日が、申込時に伝えた変更希望日。

「v6プラス利用開始まで」の設定

  • v6プラス開通まで、IPv4で接続する
  • ルータの「つなぎ方ガイド」を参考にした。基本的には、ガイド通りにつないで、起動したら、無線LANでつないでみるだけ。

X+12日後、v6プラスの解約と開通

  • 10時頃、前のプロバイダからv6プラスの解約完了のメールを受領
  • その約10分後、GMOからv6プラスの開通完了のメールを受領

Wi-Fiルータの設定

IPv6オンリーではなく、IPv4でも通信してよいのか気になったので、メールに従って、③Wi-FIルータの初期化方法を実施してみた。が、「IPv4 IPv6 両方で通信しています」と変わらずだった。多分これでよいのだろう。

以上