NodeJS problem with utf8_general_ci
node.js needs something like this to start with:

var connection = mysql.createConnection({ ... , charset : 'utf8'});


Yeah, ασδασδ looks Greek to me.  What you have is "Mojibake".  See https://stackoverflow.com/questions/38363566/trouble-with-utf8-characters-what-i-see-is-not-what-i-stored for discussion of what causes Mojibake.

Do not use any form of encode/decode/conv -- it only compounds the problem. If that link does not help you, provide the extra details that it requests.

See also https://www.npmjs.com/package/utf8

The form should mention utf-8:

&lt;form method="post" action="/your/url/" accept-charset="UTF-8"&gt;


Analysis...

'Κ' (Greek Kappa) is the 2 bytes, hex 'CE9A', in utf8.
   'Îš' in latin1 is hex 'CE9A' (2 bytes)
   'Îš', if converted to utf8 is hex 'C38E C5A1'
   'ÃŽÅ¡' is that that looks like when interpreted as latin1.

Note: this last hex is what you show in your Comment.

So, you seem to have "double encoding".

SELECT CONVERT(BINARY(CONVERT(CONVERT(BINARY(CONVERT('ÃŽÅ¡' USING latin1)) USING utf8mb4) USING latin1)) USING utf8mb4);  --&gt; 'Κ'


What is missing is where "latin1" is occurring in the flow of the data.