|
하안인 님이 쓰신 글 :
: : 위의 경우 localhost에서 접속하는 root의 경우 암호가 없네요.
: : 따라서, 접속하려면 localhost에서 "mysql -uroot mysql" 이런 식으로 해야 합니다.
: : host , user, password 모두가 그렇지만 해당 필드가 공란이면 해당 필드의 값을 제공하지 않아야 접속이 됩니다.
: : %의 경우는 해당 필드의 값을 제공하기는 해야 하지만 어떤 것을 지정해도 됩니다.
: : host 필드의 경우 접속시 사용자가 지정할 수 있는 성격이 아니고 자동으로 판단이 됩니다.
: : 따라서 host 필드가 %이면 어떤 host로부터도 접속이 가능합니다.
:
: 그렇다면 host가 localhost이면 깔려있는 pc에서 접속할때이고
: %이면 네트워크 상에서 접속되어지는 것을 관리하는 것인가요.
:
: mysqladmin -uroot -p password 1234
: 로 패스워드가 변경되지 않아서
: SQLyon에서 sQL문으로 직접 패스워드를 변경한후
: mysqladmin reload
: 를 하면 접속이 되지 않네요.
: 다시 패스워드를 지우고 하면 접속이 되구요.
root의 암호를 변경하셨고 결과적으로 root가 암호를 가지게 된 것이지요?
만약, 기존에 root에 암호가 없는데 새 암호를 부여하려면
"mysqladmin -uroot password new_password"로 해야 합니다. -p를 지정하지 않습니다.
그런다음, "mysqladmin reload"를 하면 암호가 적용됩니다.
일단 암호가 생겼으면, 다음부터는 "mysqladmin -uroot -p comand"와 같이 -p를 지정해야 합니다.
"Enter password:"에는 root에 지정되어 있는 암호를 입력해야 합니다.
또는, "mysqladmin -uroot -p암호 comand"와 같이 합니다.
mysql.exe도 같습니다.
만약, 이렇게 했는데도 접속이 되지 않는다면 암호가 틀리기 때문일 것입니다.
root가 아닌 다른 사용자를 추가하여 그 계정으로 접속하고자 하는 경우에는 mysql 데이터베이스의 user 테이블의 _priv에 각종 권한들을 설정해주어야 합니다.
|