Supongo que su tabla se llama tbl.
INSERT INTO tbl (campoX )
SELECT 'X' FROM DUAL
WHERE NOT EXISTS(
SELECT campoX from tbl
WHERE campoX ='X'
);
DUAL
es puramente para la conveniencia de las personas que requieren que todas las declaraciones SELECT tengan FROM y posiblemente otras cláusulas. MySQL puede ignorar las cláusulas. MySQL no requiere FROM DUAL si no se hace referencia a tablas.
Como otros mencionaron, podría usar INSERT IGNORE
declaración aquí SI su campoX es un unigue O campo de clave principal.