A、硝酸和硝酸银、氯化镁都不会反应,不能鉴别,故A错误;B、氯化钠和硝酸银会生成白色沉淀,但是和碳酸钠、氯化镁均不反应,不能鉴别,故B错误;C、硫酸钠和碳酸钠、氯化镁都不会反应,不能鉴别,故C错误;D、盐酸和硝酸银生成白色沉淀,和碳酸钠生成二氧化碳气体,和氯化镁不反应,现象不同,可以鉴别,故D正确.故选D.