>  기사  >  데이터 베이스  >  Mysql 원격 시스템은 데이터를 가져오거나 내보내고, 테이블을 잠그거나 일부 데이터 또는 테이블 전체를 잠그지 않습니다.

Mysql 원격 시스템은 데이터를 가져오거나 내보내고, 테이블을 잠그거나 일부 데이터 또는 테이블 전체를 잠그지 않습니다.

黄舟
黄舟원래의
2017-03-02 16:39:382822검색

최근 mysql을 사용하다 보면 데이터를 내보내거나 가져오는 상황이 자주 발생합니다. 간단한 경우에는 navicate를 사용하여 직접 결과를 내보낼 수도 있습니다. 하지만 머신이 원격이고 온라인 머신이기 때문입니다. .이 경우 점프 후 mysql을 mysql에 연결할 수 없으면 navicate에서 이 방법을 사용하여 내보낼 수 없습니다. 인터넷에서 일부 기사를 검색하여 다음과 같이 mysql 가져오기 및 내보내기를 요약했습니다. 🎜>1. 데이터베이스 내보내기

mysqldump -h 127.0.0.1  -u name -p  dbname >name.sql
127.0.0.1의 데이터베이스 dbname을 name.sql 파일로 내보내기



2. 데이터베이스의 특정 테이블 내보내기

mysqldump -h 127.0.0.1  -u username -ppassword  dbname tablename >name.sql
ip 127.0.0.1의 데이터베이스 dbname에 있는 tablename 테이블을 name.sql 파일로 내보내기



3. 특정 조건을 만족하는 데이터베이스의 특정 테이블에서 데이터 내보내기

mysqldump -h 127.0.0.1  -u username -ppassword  dbname tablename  --where="id>10 limit 10000" >name.sql
위의 1번과 2번의 상황은 모두 테이블이나 라이브러리가 모두 익스포트됩니다. , 하지만 때로는 데이터의 일부만 원하는 경우도 있습니다. 위 구조의 경우

tablename 테이블을 데이터베이스에 넣고 id> 10 name.sql 파일로 내보냅니다


4. 테이블을 잠그지 않고 데이터베이스의 특정 테이블을 내보냅니다

mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction dbname  tablename>name.sql
내보낼 때 테이블을 잠글 수 있는 권한이 없는 경우가 있습니다. 예를 들어 읽기 전용 권한만 있는 경우 테이블을 잠글 수 있는 권한이 없을 수도 있습니다. -transaction.테이블을 잠그지 않고 내보내기

위에서는 1, 2, 3에 대한 데이터베이스 테이블을 잠급니다. 이 명령을 추가하면 테이블을 잠그지 않고 데이터를 내보내는 목적을 달성할 수 있습니다


5. 데이터를 내보내지 않고 데이터베이스의 특정 테이블의 테이블 구조를 내보냅니다.

mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction -d dbname  tablename>name.sql
가끔 데이터를 내보내고 싶지 않을 때가 있습니다. , 예를 들어 테이블 구조를 내보내면 테이블 구조에 따라 테이블 구조를 완전히 복사하고 생성할 수 있습니다. 이 경우 데이터베이스에 직접 연결할 수 있는 방법이 많이 있습니다. show create table tablename 명령을 사용하여 테이블 생성 문을 가져옵니다. 이는 테이블 구조만 내보내는 또 다른 방법입니다. -d



6. 구조를 내보내지 않고 데이터베이스의 특정 테이블의 데이터를 내보냅니다.

mysqldump -h 127.0.0.1  -u username -ppassword --single-transaction -t dbname  tablename>name.sql
테이블은 내보내지 않고 데이터만 내보내고 싶은 경우 구조에서 -t를 사용하면 목적을 달성할 수 있습니다. 이 문장을 사용하는 원래 목적은 데이터베이스에 뷰를 내보내는 것입니다. 뷰 생성을 표시할 권한이 없기 때문에 뷰만 내보내려고 할 수 있습니다. 데이터만 가능하지 않은 것으로 나타났습니다. 나중에 사용할 수 있도록 다시 생각해보고 표시하겠습니다.


7. 가져올 데이터베이스

use dbname;
set names gbk;
source /d1/name/name.sql;

데이터를 가져올 때 데이터베이스에 연결하고 소스를 사용하기 전에 인코딩 형식을 -8 등으로 설정할 수 있습니다. 중국어 왜곡 문자 금지

8. 인증


insert into mysql.user(User,Password) 값("name",password("password"));


insert into mysql.user(User,Password) values("name",password("password"));


GRANT ALL PRIVILEGES ON *.* TO "name"@'%' IDENTIFIED BY 'password';


flush privileges;


show grants for 'test_group'@'%';

*.*에서 "name"@'%'에 대한 모든 권한은 'password';

플러시 권한;

'test_group'@'%';

에 대한 보조금 표시

위 내용은 mysql 원격 머신에서 데이터를 가져오고 내보내는 내용, 테이블을 잠그거나 잠그지 않는 내용입니다. 자세한 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.