MySql 데이터베이스는 비상업적 애플리케이션에 대해 무료로 제공되기 때문에 중소 규모 웹사이트의 백엔드 데이터베이스로 가장 먼저 선택됩니다. 웹사이트 개발자는 가장 비용 효율적인 "Linux+Apache+PHP+MySql" 플랫폼을 구축할 수 있습니다. MySql을 개발할 때 MySql과 함께 제공되는 문서는 초보자에게 좋은 참고 자료가 됩니다. MySql 데이터베이스는 비상업적 애플리케이션에 대해 무료로 제공되기 때문에 중소 규모 웹사이트의 백엔드 데이터베이스로 가장 먼저 선택됩니다. 웹사이트 개발자는 가장 비용 효율적인 "Linux+Apache+PHP+MySql" 플랫폼을 구축할 수 있습니다. MySql을 개발할 때 MySql과 함께 제공되는 문서는 초보자에게 좋은 참고 자료가 됩니다.
현재 일반 사용자의 개발 환경은 대부분 Windows 또는 Linux입니다. Windows에서는 MySql이 서비스로 존재하므로 서비스가 시작되지 않은 경우 net start를 사용할 수 있습니다. mysql 명령을 사용하여 시작합니다. Linux에서 시작할 때 "/etc/rc.d/init.d/mysqld start" 명령을 사용할 수 있습니다. 초기자에게는 관리자 권한이 있어야 합니다.
새로 설치된 MySql에는 비밀번호가 비어 있는 루트 계정과 익명 계정이 포함되어 있습니다. 이는 보안상 매우 위험합니다. 일부 중요한 애플리케이션의 경우 보안을 최대한 강화해야 합니다. 여기서는 익명 계정과 루트 계정을 삭제해야 합니다. 비밀번호를 설정하려면 다음 명령을 사용하십시오.
mysql을 사용하십시오;
User=""인 사용자에서 삭제;
업데이트 사용자 세트 비밀번호=PASSWORD('newpassword') 여기서 User='root';
사용자가 사용하는 로그인 터미널을 제한하려면 사용자 테이블에서 해당 사용자의 호스트 필드를 업데이트하면 됩니다. 이 때 데이터베이스 서비스를 다시 시작해야 합니다. 로그인할 때 유사한 명령:
mysql -uroot -p;
mysql -uroot -pnewpassword;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;
위의 명령 매개변수는 일반적으로 사용되는 매개변수의 일부입니다. 자세한 내용은 설명서를 참조하세요. 여기서 Mydb는 로그인할 데이터베이스의 이름입니다.
개발 및 실제 응용 프로그램에서 사용자는 루트 사용자를 사용하여 데이터베이스에 연결해야 할 뿐만 아니라 테스트에 루트 사용자를 사용하는 것이 편리하지만 시스템에 심각한 보안 위험을 가져오고 관리 개선에 도움이 되지 않습니다. 기술. 우리는 애플리케이션에서 사용되는 사용자에게 가장 적절한 데이터베이스 권한을 부여합니다. 예를 들어, 데이터 삽입만 하는 사용자에게는 데이터 삭제 권한을 부여해서는 안 됩니다. MySql 사용자 관리는 User 테이블을 통해 구현됩니다. 하나는 User 테이블에 해당 데이터 행을 삽입하고 해당 권한을 설정하는 것입니다. GRANT 명령. GRANT의 일반적인 사용법은 다음과 같습니다.
"password"로 식별되는 NewUserName@HostName 에 mydb.*의 모든 권한을 부여합니다.
"password"로 식별되는 NewUserName@HostName 에게 *.*에 대한 사용 권한을 부여합니다.
"password"로 식별되는 NewUserName@HostName 에게 mydb.*에 대한 선택, 삽입, 업데이트 권한을 부여합니다.
"password"로 식별되는 NewUserName@HostName 에 대한 mydb.TestTable의 업데이트, 삭제 권한을 부여합니다.
이 사용자에게 해당 개체에 대한 권한을 관리할 수 있는 기능을 부여하려면 GRANT 뒤에 WITH GRANT OPTION 옵션을 추가하세요. User 테이블에 Insert하여 추가된 사용자의 경우, 부주의한 사람이 비밀번호를 엿볼 수 없도록 비밀번호 필드를 업데이트하고 PASSWORD 기능을 사용하여 암호화해야 합니다. 더 이상 사용하지 않는 사용자는 삭제되어야 하며, 권한이 한도를 초과한 사용자는 사용자 테이블의 해당 필드를 업데이트하거나 REVOKE 작업을 사용하여 즉시 회수되어야 합니다.
글로벌 관리 권한:
FILE: MySQL 서버에서 파일을 읽고 씁니다.
PROCESS: 다른 사용자에게 속한 서비스 스레드를 표시하거나 종료합니다.
RELOAD: 액세스 제어 목록, 새로 고침 로그 등을 다시 로드합니다.
SHUTDOWN: MySQL 서비스를 종료합니다.
데이터베이스/데이터 테이블/데이터 열 권한:
ALTER: 기존 데이터 테이블(예: 열 추가/삭제) 및 인덱스를 수정합니다.
CREATE: 새 데이터베이스 또는 데이터 테이블을 생성합니다.
DELETE: 테이블에서 레코드를 삭제합니다.
DROP: 데이터 테이블이나 데이터베이스를 삭제합니다.
INDEX: 인덱스를 생성하거나 삭제합니다.
INSERT: 테이블에 레코드를 추가합니다.
SELECT: 테이블의 레코드를 표시/검색합니다.
업데이트: 테이블의 기존 레코드를 수정합니다.
특별 권한:
ALL: 무엇이든 할 수 있습니다(루트와 동일).
사용법: 로그인만 허용되며 다른 것은 허용되지 않습니다.
마지막으로 RedHat9.0에서 MySql 작업 데모를 제공합니다.
로그인할 데이터베이스의 루트 사용자를 선택하세요.
[weiwen@weiwenlinux]$mysql -uroot -p
비밀번호 입력:MyPassword
mysql>mydb 데이터베이스 생성;
쿼리 OK, 1개 행이 영향을 받음(0.02초)
mysql>mydb를 사용;
데이터베이스가 변경됨
mysql>TestTable 테이블 생성(Id int aut_increment 기본 키,
UserName varchar(16)이 null이 아닙니다.
주소 varchar(255));
쿼리 확인, 0개 행이 영향을 받음(0.02초)
mysql>mydb.*의 모든 것을 "test"로 식별되는 test@localhost 에 부여합니다.
쿼리 확인, 0개 행이 영향을 받음(0.01초)
mysql>종료
안녕
[weiwen@weiwenlinux]$mysql mydb -utest -ptest
그 중 test.sql은 vi로 편집한 SQL 스크립트이며 그 내용은 다음과 같다.
TestTable(UserName,Address)values('Tom','shanghai')에 삽입;
TestTable(UserName,Address)values('John','beijing')에 삽입;
TestTable에서 *를 선택하십시오.
편집된 SQL 스크립트를 실행하려면 소스 파일 이름 또는 .
위의 내용은 초보자를 위한 간단한 연습일 뿐입니다. 데이터베이스 전문가가 되려면 끊임없이 지식을 추구하고 끊임없이 생각하고, 시도하고, 또 생각해야 합니다.