抽出条件でデータ型が一致していません MS ACCESS INSERT SQL VB.NET

OleDBでインサート時に
「抽出条件でデータ型が一致しません」 のエラーが出る

Dim myDateTime As DateTime = CDate("2021/01/20 13:00:45")

Dim param_myDatetime As New OleDb.OleDbParamerter("@mydatetime",OleDb.OleDbType.DBTimeStamp)
param_DateTime.Value =myDateTime

と、この値を使うと「抽出条件が」 と言われます。

param_DateTime.Value =myDateTime.ToString("yyyy/MM/dd HH:mm:ss")


でいけます。

Chrome にパスワード侵害を教えてもらいました

と、あるサイトにログインしようとすると、ポップアップが表示されました。
パスワードが侵害されているとのこと。
とりあえず、パスワード変更。

後日、';--have i been pwned? FireFox Monitor Nortonダークウェブモニタでも、
同じ結果が出ることを確認しました。

流出もとは、AdobeDropBox でした。

パスワードの使いまわしは絶対にやめましょう。

※ Edge にも同様の機能が追加されたようなので試しましたが、侵害は検知されませんでした。

MySql レプリケーションのチェックスクリプト シェルスクリプト

ここからいただいたのですが、エラーが出てしまったので。
MySQLのレプリケーションを監視するシェルスクリプト


#! /bin/sh
#
# watch replication
#

ALERT_TO="********@gmail.com";
ALERT_SUBJECT="[MySQL] replication alert";

CHECK_COMMAND="SHOW SLAVE STATUS\G";
ALLOW_DELAY_SECONDS=30;

echo "$CHECK_COMMAND";
slave_status=`mysql -u root -p******* -e "$CHECK_COMMAND"`;
echo "$slave_status";

# set variables from status
eval "`echo "$slave_status" | sed -ne 's/: \(.*\)/="\1"/p' `";
#eval "`mysql --defaults-extra-file=/root/.my.cnf -e 'show slave status \G' | sed -ne 's/: \(.*\)/="\1"/p' `";

echo "Slave_IO_RUNNING" $Slave_IO_Running;
if [ "$Slave_IO_Running" != "Yes" ]; then
msg="Slave_IO_Running : $Slave_IO_Runningn";
fi
echo "Slave_SQL_Running:" $Slave_SQL_Running;
if [ "$Slave_SQL_Running" != "Yes" ]; then
msg="${msg}Slave_SQL_Running : $Slave_SQL_Runningn";
fi

echo "Last_ERRNO" $Last_Errno;
if [ "$Last_Errno" != "0" ]; then
msg="${msg}Last_Error : [${Last_Errno}] $Last_Error";
fi

echo "Second_Behind_Master:" $Seconds_Behind_Master;

if [ "$Seconds_Behind_Master" -gt $ALLOW_DELAY_SECONDS ]; then
msg="${msg}Seconds_Behind_Master : $Seconds_Behind_Master";
fi

if [ "$msg" != "" ]; then
echo "n-- Need alert mail --";
echo "$msg";
(echo "${msg}n${CHECK_COMMAND}n${slave_status}" | mailx -s "$ALERT_SUBJECT" "$ALERT_TO");
fi

MariaDB error :logrotate extra arguments for create ログローテートでエラーが出る。

設定ファイルは
このファイルからいただきました。
https://leben.mobi/blog/mysql-logrotate/linux/


/var/log/mysql/error.log
/var/log/mysql/slow_query.log
{
create 644 mysql mysql # ローテーション後に空のログファイルを新規作成する(パーミションとオーナーを指定)
notifempty # ファイルが空の場合はローテーションしない
daily # 毎日ローテーソンを実行する
rotate 30 # 30世代分古いログを残す
missingok # ログファイルが存在しなくてもエラーを出さずに処理を続行する
nocompress # ローテーションしたログの圧縮を行わない
dateext # ローテーションしたファイルの名称に日付を付与する
sharedscripts # ログファイルを複数指定している場合、postrotate内に記述したスクリプトを一回だけ実行
postrotate # ログローテーション後に以下のスクリプトを実行
if test -x /usr/bin/mysqladmin && \
/usr/bin/mysqladmin ping &>/dev/null
then
/usr/bin/mysqladmin --defaults-extra-file=/root/.my.cnf flush-logs
fi
endscript
}

/var/log/mysql/query.log
{
create 644 mysql mysql
notifempty
daily
rotate 14 # 14世代分古いログを残す
missingok
nocompress
dateext
postrotate
# just if mysqld is really running
if test -x /usr/bin/mysqladmin && \
/usr/bin/mysqladmin ping &>/dev/null
then
/usr/bin/mysqladmin --defaults-extra-file=/root/.my.cnf flush-logs
fi
endscript
}

logrotate -dv /etc/logrotate.d/mysql-logs
デバッグすると、
extra arguments for create ~ 
とエラーが出てダメです。権限等を確認してもだめ・・・

なるほど。できました!
設定ファイルのコメントを全て削除してください。

VB.NET MySql.Data Merge するとトランザクションでエラーが発生する。

原因はまだ不明ですが、
mySql.Data 6.10.50で、
実行ファイルにDLLをマージした場合、
マージ後のexeで呼び出されたトランザクションが全てエラーになってしまいます。

エラーメッセージは、オブジェクト参照がない、というやつ。

なぜマージすると??? マージしなければ問題は起きませんが・・・。

今回はマージしたいので、とりあえず、トランザクションを行わない方向で行きます。
mySql.Data のバージョンを上げると改善するのか。
時間ができたらトライする予定です。

Mariadb レプリケーション後、Mariadbにログインできない。

レプリケーションの設定をしていました。
データをマスタからダンプして、レプリカ(スレーブ)にデータを移動。

設定して、
OK!

マスタにデータインサート。
スレーブのデータを確認。
OK!
ここで一度MariaDBからログアウトしました。

さて。あー、別のアプリからもテーブルをアップデート、と思って再度ログイン。
mysql -u root -p

アクセスが拒否されます。
ダメです。ログインできません。
onoredekaiketsu.com

パスワードを無効にしてログインしたところで気づきました。

mysqldump -u root -p --all-databases --single-transaction --master-data=2 > master.sql

って、ユーザのデータも移動してるんじゃね?

マスタDBのパスワードで無事ログイン出来ました。

MariaDB 10.4にアップグレートしたら エラー PHP Invalid datetime format: 1366

GTIDでレプリケーションを行うため、
MariaDBをおそるおそる、アップグレードしました。
[MariaDB] MariaDB5.5を10.4にアップグレードする – 端くれプログラマの備忘録

レプリケーションまで設定して、ほっと一息。
qiita.com

確認のため、PHPのアプリからテーブルをアップデート!

・・・・・エラーが。
Invalid datetime format: 1366 Incorrect integer value:
インサート。

・・・・・エラーが。
Invalid datetime format: 1366 Incorrect integer value:

これは本番環境です。これは本番環境です。
現在午前2時。できれば朝までには復旧したい。
できれば、今すぐに復旧したい。

qiita.com

なるほど!アプリ全体を直す????直す・・・。
ちょっとやってみます・・・。エラー。 明日一日は固いです。
・・・・・・・・・・・・・・・・・・・・

これだ!
onoredekaiketsu.com

MariaDB 5.5から MariaDB 10.1 以上に上げた場合は、エラーが起こるかもしれません。
STRICT_TRANS_TABLES がデフォルトで効いているからです。
カラムの形式の厳密なチェックです。

とりあえず、STRICT_TRANS_TABLES をオフにして、
後で対応版にアプリを修正することにしました。

vi /etc/my.cnf.d/server.cnf

[mariadb]
sql_mode=''

としました。
お疲れさまでした。