linux下通过mysqldump备份mysql数据库成sql文件
linux下通过mysqldump备份mysql数据库成sql文件阶段1:傻瓜式全备份mysqldump-hip地址-uusername-ppassword-A~/name.sql此种情况将整个数据库(结构和数据)导出备
linux下通过mysqldump备份mysql数据库成sql文件
阶段1:傻瓜式全备份
mysqldump -h ip地址 -uusername -ppassword -A >~/name.sql
此种情况将整个数据库(结构和数据)导出备份成一个sql文件
-----------------------------------------------------------------------------------------------------------------------------------------------
阶段2:适当的调整参数达到不同的备份效果
我们先help一下
mysqldump --help
由于help输出过多就不一一列举出来了
通过远程连接备份
-h 需要备份服务器的地址
-u 允许远程连接的账号
-p允许远程连接账号的密码
-A 全备份
常用参数的说明
-A, --all-databases 备份所有数据库
--add-drop-database 在每个create database 语句之前增加一个drop database。
--add-drop-table 在每个create table 语句之前增加一个drop table。
--add-locks 在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE。(为了使得更快地插入到MySQL)
--default-character-set=name 设置导出数据的字符集
--opt 同--quick --add-drop-table --add-locks --extended-insert --lock-tables。应该给你为读入一个MySQL服务器的尽可能最快的导出。
-e, --extended-insert 使用全新多行INSERT语法。(给出更紧缩并且更快的插入语句)。生成的文件insert语句中回事批量的,提高导入时的速度
--hex-blob 使用十六进制格式导出二进制字符串字段。如果有二进制数据就必须使用本选项。影响到的字段类型有 BINARY、VARBINARY、BLOB。
--quick,-q 该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中
-t, --no-create-info 只导出数据
-d, --no-data 只导出结构
----------------------------------------------------------------------------------------------------------------------------------------------
阶段3:备份制定定数据库和制定数据库的某个表
mysqldump -h ip地址 -uusername -ppassword databasename >~/name.sql
mysqldump -h ip地址 -uusername -ppassword databasename tablename >~/name.sql
----------------------------------------------------------------------------------------------------------------------------------------------
阶段4.1:
通过读取文本来分库备份数据库成不同的sql文件
例如我们分别有数据库db1 db2 db3 db4 db5。。。。。。db100当我们每个库数据量都不小的时候需要按数据库分别备份,
我们也不可能100个库分别写成100个备份的脚本运行,这样我们就需要结合shell脚本中的循环语句来操作
cat filename.txt |while read i
do
备份脚本,例如:mysqldump -h ip地址 -uusername -ppassword $i >~/name.sql
done
其中filename.txt中保存数据库的库名,每行一个。
通过这样的做法再结合linux的crond服务我们就可以自动备份了
阶段4.2
如果需要分库分表备份那该这么办呢
这时候做法和分库的时候一样,分别按每个库生成相应表的表明文件一行一个分别命名为db1.txt db2.txt db3.txt db4.txt db5.txt。。。。。。。db100.txt
通过两次循环分别进行分库分表的备份
cat filename.txt |while read i
do
mkdir $i
cat $i.txt|while read a
do
备份脚本,例如:mysqldump -h ip地址 -uusername -ppassword $i $a >$i/$a.sql
done
done
当然我们有时候需要记录下备份的时间
fn=$(date +"%Y-%m-%d_%H:%M")
cat filename.txt |while read i
do
mkdir $i
cat $i.txt|while read a
do
备份脚本,美国空间,例如:mysqldump -h ip地址 -uusername -ppassword $i $a >$i/$a$fn.sql
done
done
--------------------------------------------------------------------------------------------------------------------------------------------------
阶段5:
经过第4阶段之后我们的备份更加细致,那部分的数据出问题我们就恢复那部分的(虽然颗粒度还是有些粗)
但是我们是不是觉得第4阶段的备份还是很复杂,例如我们存库名和表明的文件就是一个庞大的工程,美国服务器,新建库我们得在库文件中添加一行
新建表我们得到某个库下面的表的文件中添加一条,这样既繁琐又容易出错,而且容易忘记,维护起来很麻烦。
现在我们有个办法可以让他自动列出库和库下的表
mysql -e
执行
mysql -e "show databases"
得到如下结果
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
但是这样的结果我们没法用,所需要去掉外围的条条框框的东西
mysql -e "show databases"|sed '1d'
information_schema
mysql
performance_schema
test
for db in `mysql -e "show databases"|sed '1d'`
do
备份脚本,例如:mysqldump -h ip地址 -uusername -ppassword $db >name.sql
done
参照这个我们同样可以分库分表备份
mysql databasename -e "show tables"|sed '1d'
fn=$(date +"%Y-%m-%d_%H:%M")
for db in `mysql -e "show databases"|sed '1d'`
do
mkdir $db
for tables in `mysql $db -e "show tables"|sed '1d'`
do
备份脚本,例如:mysqldump -h ip地址 -uusername -ppassword $db $tables >$db/$tables$fn.sql
done
done
暂且完毕,请多指正,美国服务器,如有其它更好方式请留言,一起进步
本文出自 “天马行空” 博客,请务必保留此出处

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









「Linux にはタスク マネージャーはありますか?」、「Linux でタスク マネージャーを開くにはどうすればよいですか?」 Linux 初心者がよく尋ねる質問は数多くあります。Windows のユーザーは、タスク マネージャーが非常に便利であることを知っています。 Windows で Ctrl+Alt+Del を押すと、タスク マネージャーを開くことができます。このタスク マネージャーには、実行中のすべてのプロセスとそれらが消費するメモリが表示され、タスク マネージャー プログラムからプロセスを選択して強制終了できます。初めて Linux を使用するときは、Linux のタスク マネージャーに相当するものを探すこともあります。 Linux の専門家は、プロセスやメモリ消費量などを確認するためにコマンド ラインを使用することを好みますが、そうする必要はありません。

Zabbix の中国語サポートはあまり良くありませんが、それでも管理目的で中国語を選択することがあります。これは、グラフィック アイコンの下に小さな四角形が表示されます。これは間違っており、フォントをダウンロードする必要があります。たとえば、「Microsoft Yahei」、「Microsoft Yahei.ttf」は「msyh.ttf」という名前になり、ダウンロードしたフォントを /zabbix/fonts/fonts にアップロードし、/zabbix/include/defines.inc.php 内の 2 つの文字を変更します。ファイルの定義('ZBX_GRAPH_FONT_NAME','DejaVuSans');define('ZBX_FONT_NAME'

Linux システムでアカウントの作成日を確認する方法をご存知ですか?知っていたら何ができるでしょうか?成功しましたか? 「はい」の場合、どうすればよいですか?基本的に Linux システムはこの情報を追跡しません。では、この情報を取得する別の方法は何でしょうか?なぜこれをチェックするのか疑問に思われるかもしれません。はい、この情報を確認する必要がある状況があり、そのときに役立ちます。以下の7つの方法で確認できます。 /var/log/secure を使用する aureport ツールを使用する .bash_logout を使用する chage コマンドを使用する useradd コマンドを使用する passwd コマンドを使用する last コマンドを使用する 方法 1: /var/l を使用する

システム全体のインストール フォントをシステム全体にインストールすると、すべてのユーザーがそのフォントを使用できるようになります。これを行う最善の方法は、公式ソフトウェア リポジトリから RPM パッケージを使用することです。開始する前に、Fedora Workstation の「ソフトウェア」ツール、または公式リポジトリを使用する他のツールを開きます。選択バーで「アドオン」カテゴリを選択します。次に、カテゴリ内の「フォント」を選択します。以下のスクリーンショットにあるような、使用可能なフォントが表示されます。 フォントを選択すると、いくつかの詳細が表示されます。いくつかのシナリオに応じて、フォントのサンプル テキストをプレビューできる場合があります。 「インストール」ボタンをクリックしてシステムに追加します。システム速度とネットワーク帯域幅によっては、このプロセスが完了するまでに時間がかかる場合があります。

1. インターネットからフォント wingdings、wingdings2、wingdings3、Webdings、および MTExtra を見つけます。 2. メイン フォルダーに入り、Ctrl+H (隠しファイルを表示) を押し、.fonts フォルダーがあるかどうかを確認します。 3. wingdings、wingdings2、wingdings3、Webdings、MTExtra などのダウンロードしたフォントをメイン フォルダーの .fonts フォルダーにコピーし、wps を起動して、「システムにフォントがありません...」というリマインダー ダイアログがまだあるかどうかを確認します。そうでない場合は、「成功」をクリックしてください。

1 本のネットワーク ケーブルを使用して 2 つの ubuntu ホストをインターネットに接続する方法 1. ホスト A: ubuntu16.04 とホスト B: ubuntu16.042 を準備します。ホスト A には 2 つのネットワーク カードがあり、1 つは外部ネットワークに接続され、もう 1 つは外部ネットワークに接続されます。ホストBに。 iwconfig コマンドを使用して、ホスト上のすべてのネットワーク カードを表示します。上に示したように、作成者の A ホスト (ラップトップ) 上のネットワーク カードは次のとおりです。 wlp2s0: これはワイヤレス ネットワーク カードです。 enp1s0: 有線ネットワーク カード、ホスト B に接続されているネットワーク カード。残りの部分は私たちには関係ないので、気にする必要はありません。 3. A の静的 IP を構成します。ファイル #vim/etc/network/interfaces を編集して、以下に示すようにインターフェイス enp1s0 の静的 IP アドレスを構成します (#==========

実験環境: OS: LinuxCentos7.4x86_641。現在のサーバーのタイムゾーンを表示し、タイムゾーンをリストし、タイムゾーンを設定します (すでに正しいタイムゾーンである場合はスキップしてください): #timedatectl#timedatectllist-timezones#timedatectlset-timezoneAsia /上海2. タイムゾーンの概念の理解: GMT、UTC、CST、DSTUTC: 国際無線通信の状況では、統一するために、地球全体が 24 のタイムゾーンに分かれています。協定世界時 (UTC) :UniversalTim と呼ばれる統一時刻が使用されます。

CPU アーキテクチャが異なるため、Raspberry Pi 上で DOS を実行するのは簡単ではありませんが、それほど問題はありません。 FreeDOS は誰にとっても馴染みのあるものかもしれません。これは、DOS 用の完全な無料の互換性の高いオペレーティング システムであり、一部の古い DOS ゲームや商用ソフトウェアを実行でき、組み込みアプリケーションも開発できます。プログラムが MS-DOS 上で実行できる限り、FreeDOS 上でも実行できます。 FreeDOS のイニシエーターおよびプロジェクト コーディネーターとして、多くのユーザーが内部関係者として私に質問をします。私が最もよく聞かれる質問は、「FreeDOS は Raspberry Pi 上で実行できますか?」というものです。この質問は驚くべきことではありません。結局のところ、Linux は Raspberry Pi 上で非常にうまく動作します
