Growing RAID1 to RAID5 works fine, (but you should still have backups just in case.)
sudo mdadm --add /dev/md0 /dev/sdd
This command would add /dev/sdd to your /dev/md0 RAID1 as a spare drive.
Other than mdadm metadata, nothing will be written to it (unless one of the other drives failed, so the spare would be used to restore redundancy).
sudo mdadm --grow /dev/md0 --level=raid5 --raid-devices=3
This command would grow your 2-disk RAID1 to a 3-disk RAID5. This process reshapes / relocates all data (from previous 2-drive mirror to 3-drive RAID5 layout). During this process, whatever was on /dev/sdd before will be overwritten by contents of /dev/md0. Data on device /dev/md0 won't change at all except for additional capacity once growing is done. You'll have to grow the filesystem to utilize the added capacity.
You can combine both commands into one:
mdadm --grow /dev/md0 --level=5 --raid-devices=3 --add /dev/sdd
In general, --grow is supposed to be safe and retain data. mdadm should warn you when trying to do dangerous operations (such as shrinking) or when additional steps are necessary (such as providing a backup file).
You lose data when you --create (like mkfs), or when too many drives --fail, or when messing with the member drives in other ways.
You'll also lose whatever is on /dev/sdd since you're growing your RAID with it, so /dev/sdd gets overwritten with whatever currently is on /dev/md0.
If --grow lost data, there would be no point in using it at all, you'd just --create a new one in the first place.