That's because on MySQL 8, they did the unthinkable and implemented the stupid method of doing geography coordinates (like MySQL). This broke backwards compatability.
- When you use Geometry on MySQL (any SRID) except 4326 you use (long,lat). That's (x,y) on a Cartesian system.
- When you use Geography on MySQL (SRID = 4326) you use (lat, long). That's (y,x) typically. This is done because English speakers tend to say "latitude and longitude" rather than "longitude, latitude"
Amusingly Oracle which owns MySQL does not do this on Oracle Spatial. Oracle Spatial and PostGIS are consistently
(long,lat). To resolve this switch the order, not
ST_GeomFromText('POINT(102.1893310546875 3.880696482497261)', 4326)
ST_GeomFromText('POINT(3.880696482497261 102.1893310546875)', 4326)
In MySQL 5.x there was no real geographical coordinate system.
You shouldn't be using WKT for this if you have the points you can just use
ST_SRID(Point(3.880696482497261, 102.1893310546875), 4326)
For more information see also,