Instalando MySQL en Ubuntu

그것은 데이터베이스를위한 시간이다 이전에 보았 듯이 "LEMP"의 (M)은 MySQL에 해당합니다

사이트 "lempio"에서 다음과 같이 표시됩니다 "MySQL은 두 번째 관계형 데이터베이스 관리 시스템입니다 오픈 소스가 가장 많이 사용되었습니다 커뮤니티 (MariaDB)가 개발 한 분기점 (분기점) 원래 개발자가 지시합니다

당신의 목표는 직접적인 대체물이 될 것입니다 " 불명확하지만,이 과정에서는 원본 MySQL을 설치할 예정이며, 즉 오라클이 유지 관리하는 버전입니다 어쨌든, 지원 자료에서, 당신은 유익한 MariaDB를 선호하는 사람들을 위해 MariaDB를 설치하는 방법 시작하자 먼저 우리는 콘솔에 간다

'mysql'을 실행하여 설치하지 않았 음을 확인하십시오 예상대로 실패합니다 그런 다음 'sudo apt install mysql-server' 우리가 볼 수 있듯이 이것은 "MySQL 클라이언트"와 "MySQL 서버"를 설치합니다 우리가 계속하기를 원한다면 Enter를 줘 우리는 당신이 다운로드하여 설치하는 것을 기다립니다

작업이 끝나면 화면을 지우고 'mysql –version' MySQL 5724가 이미 설치되어 있는지 확인하십시오

우리가 Nginx로했던 것처럼, 우리는 'ps aux | grep mysql ' 실행중인 모든 프로세스, 모든 사용자의보기, "mysql"단어로 필터링 그리고 프로세스가 실제로 실행되고 있음을 알 수 있습니다 "mysql"사용자가 "Mysqld" 또한 우리가 이전에 Nginx로했던 것처럼 우리는 'sudo service mysql status', 47 초 전에 활성화 된 것을 볼 수 있습니다 훌륭함 프로덕션 서버에서 수행 할 단계를 따르십시오

우리가 할 첫 번째 일은 'sudo mysql_secure_installation'을 실행하는 것입니다 그가하는 첫 번째 일은 우리가 "플러그인"을 활성화하기를 원한다면 우리에게 묻는 것입니다 "올바른 비밀번호" 이것이하는 일은 긴 암호를 사용하도록 강제하는 것입니다 따라서 더 안전합니다

그리고 "예"를 나타 내기 위해 소문자 또는 대문자 "와"를 눌러야한다고 알려줍니다 "아니오"를 나타내는 다른 키 이 경우에는 활성화하지 않으려 고합니다 간단한 비밀번호를 사용하고 싶습니다 분명히 생산에서 우리는 "Y"를 누를 것입니다

나는 입장한다 그는 내가 새 비밀 번호를 입력하도록 요구합니다 나는 비밀로 입력합니다

나는 입장한다 그는 나에게 비밀 번호를 반복하도록 요청하고, 나는 다시 '비밀'이라고 쓴다 지금 그것은 밝힌다 : "기본적으로 MySQL 설치에는 익명의 사용자가 있습니다 누구든지 MySQL에 로그인 할 필요없이 로그인 할 수 있습니다 해당 사용자 계정이 생성됩니다

이는 테스트 용으로 만 의미가 있으며, 설치를 좀 더 부드럽게 만드십시오 프로덕션 환경으로 이동하기 전에 제거해야합니다 " 익명 사용자를 삭제할지 묻는 메시지입니다 분명히, 우리는 생산 단계에 있지 않지만 우리는 예라고 말할 것입니다 우리는 프로덕션 서버에서와 같이 'and'라고 쓰고, 우리는 입장을 제공합니다

이제 "루트"사용자를 비활성화할지 묻습니다 원격으로 로그인 할 수 있습니다 즉, "localhost"가 아닌 다른 곳에서 '예'라고 표시하기 위해 'and'를 누르고 입력을합니다 기본적으로 MySQL에는 테스트 데이터베이스가 있으며, 우리가 그것을 제거하고 싶은지 우리에게 묻습니다

다시 'and'를 입력하십시오 그리고 마침내 그는 우리에게 테이블의 권한을 다시로드 할 것인지 묻습니다 그 변화는 즉각적인 효과를 가져옵니다 나는 'and', Enter를 누른다 준비 됐어

우리는 이미 데이터베이스 서버를 "안전"상태로 유지하고 있습니다 "플러그인"을 활성화하지 않았으므로 따옴표로 묶으십시오 우리 암호를 검증하는 하지만 그 밖의 모든 것 마치 우리가 프로덕션 환경을 설정하는 것처럼했습니다 이 시점에서 우리는 이미 MySQL을 사용하여 사용자 "루트"와 비밀 번호 "비밀", 또는 아닙니다? 'mysql –help'를 입력하면 우리는 터미널에서 MySQL을 사용하는 방법을 볼 수있다; "-u"를 사용하여 사용자를 전달할 수 있습니다 암호 "-p", 포트 "-P"(대문자), 등 보자

나는 'mysql -uroot -psecret'이라고 쓴다 "u", 사용자, 우리는 공간을 남길 수 후, "p"다음에 공백을 두지 않는 것이 중요합니다 나중에 우리는 왜 볼 것입니다 들어가기 그것은 우리에게 다음과 같이 접근을 거부합니다 : "명령 행 인터페이스에서 암호를 사용하는 것은 안전하지 않을 수 있습니다" 좋아

위로 화살표 암호를 삭제합니다 그리고 암호 만 필요하다는 것을 나타 내기 위해 "-p"를 남깁니다 나는 입장한다 이제 그는 내 암호를 묻습니다 나는 '비밀'이라고 쓰고, 나는 Enter를 씁니다 그리고 계속 액세스를 거부했다 왜? 음 기본값이 사용 가능하지 않기 때문입니다 비밀번호로 액세스하십시오 MySQL에 들어가려면 간단히 'sudo mysql' 위의 모든 것을 헛된 것으로 했습니까? 아니

분명히 그들이 각 단계의 이유를 이해하는 것이 중요합니다 계속하겠습니다

내가하는 첫 번째 일은 '쇼 데이터베이스'를 작성하는 것입니다 끝에 세미콜론은 중요하다, PHP와 같은 방식으로, 명령이 끝난다는 것을 MySQL에 알리십시오 이 명령으로 수행하는 작업은 모든 데이터베이스를 보는 것입니다 여기에 나열된 것 외에도, 또 다른 "테스트" 이전 명령을 실행할 때 제거하지 않았다면 "Mysql_secure_installation" 우리에게 관심이있는 데이터베이스는 "mysql"입니다 그것을 사용하려면 'use mysql;'이라고 써라 이제는 '쇼 테이블'을 사용합니다 이 데이터베이스에 포함 된 테이블을 확인하십시오

이 데이터베이스에있는 모든 테이블을 보여줍니다 우리에게 중요한 것은 "사용자"입니다 나는 스크린을 청소한다 그리고 나는 '묘사하는 사용자'라고 쓰고, "사용자"테이블의 필드를 나열합니다 우리는 모든 분야를 본다

우리가 필요로하는 것은 있습니다 "호스트", "사용자", "Authentication_string" 그리고 "plugin"

그런 다음 "선택"을합니다 타이핑 '사용자, 호스트 선택'() 'authentication_string'(탭 도움말) (

) ', 사용자로부터의 플러그인;' 우리는 "사용자"가 대문자 "U"를 사용하는 것을 보았지만 같은 방식으로 소문자로 작동합니다 그리고 여기서 우리는 사용자 "루트" 그것은 "authentication_string"을 가지고 있지 않다

및 "플러그인"은 나머지 사용자와 달리, "auth_socket"이지 "mysql_native_password"가 아닙니다 그것을 수정하기 위해 우리는 다음과 같이 쓴다 '사용자 변경'() '루트'( "사용자"란 무엇인가) () '@localhost'( "호스트"란 무엇입니까?) () 'IDENTIFIED WITH mysql_native_password'( "플러그인") () "BY password"(우리의 비밀 번호는 무엇입니까) (

) 실행시 "VALIDATE PASSWORD"플러그인을 활성화 한 경우 "Mysql_secure_installation", 이렇게 암호를 사용할 수 없습니다 그것은 더 길어야 할 것입니다 사실 저는 "비밀"을 "루트"의 암호로 쓰려고합니다

() ';' 실행하기 전에 지침을 작성했음을 분명히 밝힙니다

대문자 MySQL 자동 완성 기능을 도와주세요 소문자로만 간단히 작동하지 않습니다 명령은 소문자 또는 대문자를 사용하여 작성할 수 있습니다 그것은 완전히 불명료합니다 네, 들어갑니다

이제 다음을 사용하여 권한을 다시로드합니다 '유동 특권;' 준비 됐어 이전의 "선택"을 다시 실행하면 이제 우리는 "authentication_string" "plugin"은 "mysql_native_password"입니다 음

우리는 "Ctrl + D"를 사용하여 나갔다 "sudo"를 사용하여 액세스 해 봅시다 이제 비밀번호가 필요합니다

그런 다음 'mysql -uroot'(우리 사용자) () '-psecret'(우리 암호) 여기에 공간을 남길 필요가 없다는 것을 기억하십시오

들어가기 준비 됐어 우리가 원하는대로 작동합니다 한 번 더 나가자, "Ctrl + D" 이제 "p"뒤에 공백을두면 어떻게 될지 봅시다 그는 암호를 요구합니다

암호를 등록하지 않았다는 표시입니다 우리는 비밀 번호 '비밀'을 씁니다 들어가기 및 "PUM" 알 수없는 '비밀'데이터베이스 분명히, 우리가 "p"뒤에 "password"를 남겨두면, 기본 데이터베이스로 암호를 가져오고, 즉, "로그인"하면이 데이터베이스를 사용하려고 시도하며, 이 경우 "비밀"데이터베이스가 존재하지 않으므로 실패합니다

마침내 암호를 같은 줄에 직접 입력하지 않는 것이 좋습니다 우리는 간단히 "-p"라고 쓰면 패스워드를 사용한다는 것을 나타냅니다 우리는 다음 단계에서 그것을 입력합니다 이는 단순히 명령 기록에 남아 있지 않도록하기위한 것입니다 우리는 끝냈다! 이미 MySQL을 설치하고 구성했습니다

훌륭한 작품!