Users are facing issues importing data from Question2Answer and vBulletin5 into Discourse using Docker. sat cannot connect to the MariaDB database, receiving an ‘Access denied for user root@localhost’ error despite having imported the data successfully. pfaffman suggests checking the MySQL connection and hostname settings. INSTAR encounters the same problem and later resolves it by updating the plugin for the root user in MariaDB to mysql_native_password, allowing the discourse user to connect. INSTAR confirms the script now runs, though further vBulletin5-specific errors remain.
I tried setting Hostname to localhost, ‘127.0.0.1’, ip-171-22-11-150 (this is shown as a hostname when I issue command >hostname) and with actual IP address of server.
I also set password for a root users. I do see tables in db got imported correctly from q2a.
I am not sure about the TABLE_PREFIX here. But all table names start with vb5. in my default installation - so I guess this should be ok (I also tried leaving it empty).
But the main issue is that I cannot connect to the MariaDB database with the discourse user:
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