q2a インポートに関する問題

こんにちは、Discourse コミュニティの皆様。

@sat さん、この問題の解決策は見つかりましたか?

私も Docker を使用した vBulletin5 からの移行を試みた際に、同じエラーに遭遇しました。これは 同じスレッド の内容です。

また、MySQL ではなく MariaDB をインストールしました:

apt-get update && apt-get install libmariadb-dev mariadb-server-10.3

SQL データをインポートし、データベースに接続してテーブルが作成されていることを確認しました:

mysqlcheck -c vb5  -u root -p

最初はデフォルトのログイン情報(root / パスワードなし)を使用しましたが、2 回目の試行では root ユーザーにパスワードを設定しました:

export DB_NAME="vb5"
export DB_USER="root"
export DB_PW="password1234"
export TABLE_PREFIX="vb5."
export ATTACHMENT_DIR='/vb5-attachments'
export TIMEZONE='Europe/Berlin'

cd /var/www/discourse
su discourse -c 'bundle exec ruby script/import_scripts/vbulletin5.rb'

TABLE_PREFIX の設定については確信が持てません。デフォルトのインストールではすべてのテーブル名が vb5. で始まるため、これで問題ないと思われます(空のまま試したこともあります)。

しかし、主な問題は、discourse ユーザーで MariaDB データベースに接続できないことです:

su discourse -c 'bundle exec ruby script/import_scripts/vbulletin5.rb'
Loading existing groups...
Loading existing users...
Loading existing categories...
Loading existing posts...
Loading existing topics...
Traceback (most recent call last):
        5: from script/import_scripts/vbulletin5.rb:632:in `<main>'
        4: from script/import_scripts/vbulletin5.rb:632:in `new'
        3: from script/import_scripts/vbulletin5.rb:27:in `initialize'
        2: from script/import_scripts/vbulletin5.rb:27:in `new'
        1: from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `initialize'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `connect': Access denied for user 'root'@'localhost' (Mysql2::Error)
su discourse
mysqlcheck -c vb5  -u root -p
Enter password: #password1234
mysqlcheck: Got error: 1698: Access denied for user 'root'@'localhost' when trying to connect