Should I add relation id on parent or child table for one to one relation
When the table is splitted vertically with 1:1 relation where slave sub-table record is optional, the common structure is

CREATE TABLE main ( ... ,
                    slave_id INT NULL,
                    UNIQUE INDEX uidx_slave_id (slave_id),
                    FOREIGN KEY (slave_id) REFERENCES slave (id),
                    ... );

CREATE TABLE slave ( id INT NOT NULL PRIMARY KEY, 
                     ... );


This structure gives more simple query when you need main records which have no slave record. In all another cases (when you need data from both tables) this and backward structures are close to equivalent.