관리 방법MySQL 데이터베이스? SSH 명령 관리MySQL의服务器
MySQL의 管理
MySQL 서버 시작 및 중지
먼저 다음 명령을 실행하여 MySQL 서버가 작동 중인지 확인해야 합니다.
ps -ef | grep mysqld
MySql이 이미 시작된 경우 위의 명령은 mysql 프로세스 목록을 출력합니다. mysql이 시작되지 않은 경우 다음 명령을 사용하여 mysql 서버를 시작할 수 있습니다.
root@host# cd /usr/bin ./mysqld_safe &
현재 실행 중인 MySQL 서버를 종료하려면 다음 명령을 실행할 수 있습니다.
root@host# cd /usr/bin ./mysqladmin -u root -p shutdown Enter password: ******
MySQL 사용자 설정
MySQL 사용자를 추가해야 하는 경우 mysql 데이터베이스의 사용자 테이블에 새 사용자를 추가하기만 하면 됩니다.
다음은 사용자를 추가하는 예입니다. 사용자 이름은 guest, 암호는 guest123이고 사용자는 SELECT, INSERT 및 UPDATE 작업을 수행할 권한이 있습니다.
root@host# mysql -u root -p Enter password:******* mysql> use mysql; Database changed mysql> INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y'); Query OK, 1 row affected (0.20 sec) mysql> FLUSH PRIVILEGES; Query OK, 1 row affected (0.01 sec) mysql> SELECT host, user, password FROM user WHERE user = 'guest'; +-----------+---------+------------------+ | host | user | password | +-----------+---------+------------------+ | localhost | guest | 6f8c114b58f2ce9e | +-----------+---------+------------------+ 1 row in set (0.00 sec)
사용자를 추가할 때, 비밀번호는 MySQL에서 제공하는 PASSWORD() 함수를 사용하여 암호화된다는 점에 유의하십시오.위의 예에서 암호화된 사용자 비밀번호가 6f8c114b58f2ce9e임을 알 수 있습니다.
注意 :MySQL 5.7에서 사용자 테이블의 비밀번호는 다음으로 대체되었습니다.인증_문자열.
注意 :시행할 필요가 있음을 인지 플러시 특권 성명.이 명령이 실행된 후 부여 테이블이 다시 로드됩니다.
이 명령을 사용하지 않으면 mysql 서버를 다시 시작하지 않는 한 새로 생성된 사용자를 사용하여 mysql 서버에 연결할 수 없습니다.
사용자 생성 시 해당 사용자에 대한 권한을 지정할 수 있으며, 해당 권한 열에서 insert 문에 'Y'로 설정합니다.사용자 권한 목록은 다음과 같습니다.
- 선택_개인
- 삽입_개인
- 업데이트_개인
- 삭제_개인
- Create_priv
- drop_priv
- reload_priv
- 종료_priv
- 프로세스_priv
- 파일_개인
- Grant_priv
- References_priv
- Index_priv
- Alter_priv
사용자를 추가하는 또 다른 방법은 SQL의 GRANT 명령을 사용하는 것입니다.다음 명령은 사용자 zara를 지정된 데이터베이스 TUTORIALS에 추가하고 암호는 zara123입니다.
root@host# mysql -u root -p password; Enter password:******* mysql> use mysql; Database changed mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP -> ON TUTORIALS.* -> TO 'zara'@'localhost' -> IDENTIFIED BY 'zara123';
위의 명령은 mysql 데이터베이스의 사용자 테이블에 사용자 정보 레코드를 생성합니다.
노트: MySQL SQL 문은 세미콜론(;)으로 종료됩니다.
/etc/my.cnf 파일 구성
정상적인 상황에서는 구성 파일을 수정할 필요가 없으며 파일의 기본 구성은 다음과 같습니다.
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock [mysql.server] user=mysql basedir=/var/lib [safe_mysqld] err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
설정 파일에서 다양한 에러 로그 파일이 저장되는 디렉토리를 지정할 수 있으며, 일반적으로 이러한 설정은 변경할 필요가 없습니다.
MySQL을 관리하는 명령
다음은 Mysql 데이터베이스를 사용하는 과정에서 일반적으로 사용되는 명령을 나열합니다.
- 사용 데이터 저장소 이름 :
운영할 MySQL 데이터베이스를 선택합니다.이 명령을 사용한 후 모든 Mysql 명령은 이 데이터베이스에만 적용됩니다.mysql> use chenweiliang; Database changed
- 데이터베이스 표시:
MySQL 데이터베이스 관리 시스템의 데이터베이스 목록을 나열합니다.mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | chenweiliang | | cdcol | | mysql | | onethink | | performance_schema | | phpmyadmin | | test | | wecenter | | wordpress | +--------------------+ 10 rows in set (0.02 sec)
- 쇼 테이블:
지정된 데이터베이스의 모든 테이블을 표시합니다.이 명령을 사용하기 전에 use 명령을 사용하여 운영할 데이터베이스를 선택해야 합니다.mysql> use chenweiliang; Database changed mysql> SHOW TABLES; +------------------+ | Tables_in_chenweiliang | +------------------+ | employee_tbl | | chenweiliang_tbl | | tcount_tbl | +------------------+ 3 rows in set (0.00 sec)
- 열 보기 数据 表:
데이터 테이블 속성, 속성 유형, 기본 키 정보, NULL인지 여부, 기본값 및 기타 정보를 표시합니다.mysql> SHOW COLUMNS FROM chenweiliang_tbl; +-----------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------------+--------------+------+-----+---------+-------+ | chenweiliang_id | int(11) | NO | PRI | NULL | | | chenweiliang_title | varchar(255) | YES | | NULL | | | chenweiliang_author | varchar(255) | YES | | NULL | | | submission_date | date | YES | | NULL | | +-----------------+--------------+------+-----+---------+-------+ 4 rows in set (0.01 sec)
- 색인 표시 数据 表:
PRIMARY KEY(기본 키)를 포함한 데이터 테이블의 자세한 인덱스 정보를 표시합니다.mysql> SHOW INDEX FROM chenweiliang_tbl; +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | chenweiliang_tbl | 0 | PRIMARY | 1 | chenweiliang_id | A | 2 | NULL | NULL | | BTREE | | | +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 1 row in set (0.00 sec)
- SHOW TABLE STATUS LIKE [FROM db_name] [LIKE '패턴'] \G:
이 명령은 MySQL 데이터베이스 관리 시스템의 성능 및 통계를 출력합니다.mysql> SHOW TABLE STATUS FROM chenweiliang; # 显示数据库 chenweiliang 中所有表的信息 mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%'; # 表名以chenweiliang开头的表的信息 mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%'\G; # 加上 \G,查询结果按列打印
희망 첸 웨이량 블로그( https://www.chenweiliang.com/ ) 공유 "MySQL 데이터베이스를 관리하는 방법? MySQL 서버 관리를 위한 SSH 명령"이 도움이 될 것입니다.
이 기사의 링크를 공유하는 것을 환영합니다:https://www.chenweiliang.com/cwl-453.html
최신 업데이트를 받으려면 Chen Weiliang 블로그의 Telegram 채널에 오신 것을 환영합니다!
📚 이 가이드에는 엄청난 가치가 담겨 있습니다. 🌟이것은 흔치 않은 기회입니다. 놓치지 마세요! ⏰⌛💨
당신이 원한다면 공유하고 좋아하십시오!
당신의 공유와 좋아요는 우리의 지속적인 동기 부여입니다!