This does not seem to be an encoding, but a mapping. Mapping determines how MySQL treats "almost equal" characters when it comes to sorting or comparing.
For example, standard iso-8859-15 sorting will handle ΓΌ = u
What you can do is handle your field like bin sorting. Binary sorting does not apply to the same characters.
Choose the correct binary sort
SELECT CHARACTER_SET_NAME, COLLATION_NAME FROM information_schema.COLLATIONS WHERE COLLATION_NAME LIKE '%bin%';
Then do your upgrade as follows:
UPDATE TABLE SET columnx = REPLACE( columnx COLLATE latin1_bin, 'β', '-' );
CORRECTION: REPLACE comparisons are always performed using binary sorting.
EDIT:
If you still get 0 lines, you probably won't replace the correct character. Convert the string containing the character to hexadecimal and place the hexadecimal value so that we can find out which char we are talking about
eg.
SELECT HEX( columnx ) LIMIT 1;
EDIT2:
You just said that you got \u0096 , which is a control character called the BEGIN OF SECURITY AREA . creates .. in hexadecimal, this is 0xC2 0x96 . In your sample request, you replace a characer called EN DASH
It's hard to replace a control character, just by inserting it, conversions can break it. Instead, you can use UNHEX (hexval) to tell MySQL which character you mean
UPDATE TABLE SET columnx = REPLACE( columnx UNHEX( 'C296' ), '-' );
or in order to make it more understandable (or even more confusing :)), it also skips the "normal" hypen as a hexadecimal value
UPDATE TABLE SET columnx = REPLACE( columnx UNHEX( 'C296' ), UNHEX( '2D' ) );