数据库脚本

三分钟学会使用Derby数据库

China☆狼群 提交于 2019-12-16 11:39:46
Derby数据库是一个纯用Java实现的内存数据库,属于Apache的一个开源项目。由于是用Java实现的,所以可以在任何平台上运行;另外一个特点是体积小,免安装,java1.6开始集成了derby数据库,位于jdk下面的db目录下. 环境变量配置 CLASSPATH = 12345 ‪C:openSourcejdk1.8.0_162dblibderby.jar;‪C:openSourcejdk1.8.0_162dblibderbyclient.jar;‪C:openSourcejdk1.8.0_162dblibderbytool.jar;‪C:openSourcejdk1.8.0_162dblibderbynet.jar;‪C:openSourcejdk1.8.0_162dblibderbytools.jar; PATH = 1 C:openSourcejdk1.8.0_162dbbin 如果不想配置,也可以使用下面指令来简化你的使用 在Derby数据库的/bin目录中提供了几个脚本用于设置classpath,以简化你手工在classpath中添加jar包的麻烦: setEmbeddedCP。当使用内嵌模式来运行Derby时,可以使用该脚本来设置。该脚本将derby.jar和derbytools.jar添加到环境变量中; setNetworkServerCP

Flask 教程 第四章:数据库

て烟熏妆下的殇ゞ 提交于 2019-12-09 19:31:49
本文翻译自 The Flask Mega-Tutorial Part IV: Database 在Flask Mega-Tutorial系列的第四部分,我将告诉你如何使用 数据库 。 本章的主题是重中之重!大多数应用都需要持久化存储数据,并高效地执行的增删查改的操作, 数据库 为此而生。 本章的GitHub链接为: Browse , Zip , Diff . Flask中的数据库 Flask本身不支持数据库,相信你已经听说过了。 正如表单那样,这也是Flask有意为之。对使用的数据库插件自由选择,岂不是比被迫适应其中之一,更让人拥有主动权吗? 绝大多数的数据库都提供了Python客户端包,它们之中的大部分都被封装成Flask插件以便更好地和Flask应用结合。数据库被划分为两大类,遵循 关系 模型的一类是关系数据库,另外的则是非关系数据库,简称 NoSQL ,表现在它们不支持流行的关系查询语言 SQL (译者注:部分人也宣称NoSQL代表不仅仅只是SQL)。虽然两类数据库都是伟大的产品,但我认为关系数据库更适合具有结构化数据的应用程序,例如用户列表,用户动态等,而NoSQL数据库往往更适合非结构化数据。 本应用可以像大多数其他应用一样,使用任何一种类型的数据库来实现,但是出于上述原因,我将使用关系数据库。 在 第三章 中,我向你展示了第一个Flask扩展,在本章中,我还要用到两个。

innobackupex自动备份数据库脚本

怎甘沉沦 提交于 2019-12-06 10:34:53
脚本内容:如果没有进行过全量备份则首次进行全量备份,每周一进行一次全量备份,其余6天进行增量备份 #!/bin/bash innobackupex=/usr/bin/innobackupex #命令位置 mysql_cmd=" --user=root --password=password --host=192.168.1.170 --port=3306" #数据库连接信息 backup_full=/root/mysql/backup/full #全量备份主目录 backup=/root/mysql/backup/backup/ #增量备份主目录 date=`date +%Y-%m-%d` #echo $backup_full/$date #判断命令是否安装、目录是否存在、数据库连接信息是否正确等过滤 #如果全量备份目录为空,则开始进行全量备份,并获取目录名 ulimit -n 10240 flag_backup_full=`ls $backup_full | wc -l` if [ $flag_backup_full -eq 0 ]; then #如果全量备份目录为空,则进行全量备份 mkdir -p $bakcup_full/$date `$innobackupex $mysql_cmd $backup_full/$date` fi if [ `date +%u` -eq 1

MySQL数据库备份脚本

我的梦境 提交于 2019-12-06 04:21:31
MySQL 数据库备份脚本 实验环境: mysql-server : 192.168.200.101 mysql-client : 192.168.200.102 实验要求:对 mysql-server 的 auth 库和 client 库实现异地备份,每天凌晨 2:00 进行备份,撰写一个数据恢复脚本。 MySQL 服务端授权,给予 select 和 lock tables 权限,以备份 [root@localhost ~]# mysql -uroot -p123456 mysql> grant select,lock tables on auth.* to 'admin'@'192.168.200.102' identified by '123456'; Query OK, 0 rows affected (0.00 sec ) mysql> grant select,lock tables on client.* to 'admin'@'192.168.200.102' identified by '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) 客户端安装客户端软件 [root@client ~]# yum

mysql5.7 数据库自动备份脚本

自闭症网瘾萝莉.ら 提交于 2019-12-05 14:08:07
新建备份目录 mkdir /backups mkdir /backups/mysql 新建存放备份脚本目录 mkdir /data/scripts 备份脚本: mysql_backup.sh =============================================================== #!/bin/bash HOST=localhost USER=root PORT=  #端口号 PASSWD=  #数据库 密码 DATE=`date +%Y-%m-%d` #DATE_NOW=`date +%Y-%m-%d.%H%M` DATE_NOW=`date +%Y-%m-%d` OLDDATE=`date +%Y-%m-%d -d "60 days ago"`   BACKUPDIR=/backups/mysql   # 备份目录 mkdir -p ${BACKUPDIR}/${DATE} cd ${BACKUPDIR}/${DATE} /usr/local/mysql/bin/mysqldump -h${HOST} -P${PORT} -u${USER} -p${PASSWD} -R -E --single-transaction --databases DB_CFG > db_cfg_${DATE_NOW}.sql       #数据库名 /usr

shell脚本备份mysql数据库

笑着哭i 提交于 2019-12-05 09:52:06
https://github.com/aminglinux/shell20 一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份,具体要求如下: 1)每天备份一次,需要备份所有的库 2)把备份数据存放到/data/backup/下 3)备份文件名称格式示例:database_name-2018-11-11.sql 4)需要对1天以前的所有sql文件压缩,格式为gzip 5)本地数据保留1周 6)需要把备份的数据同步到远程备份中心,假如本机可以直接通过rsync命令同步,同步目标地址为rsync://10.10.20.100/mysqlbak/ 7)远程备份数据要求保留1个月 拿到需求后,我们不应该马上就动手,而是应该先分析需求点,准备好储备知识。如果你没有足够的储备知识,无论脚本语法掌握的多么熟练,这个脚本也是不能完成的。本脚本的核心知识点是如何备份所有的库。 知识点一:MySQL数据库备份 假设已知备份数据的用户为backup,密码为34KpmyzUq,要备份的5个数据库分别为db1-db5。 备份数据库的命令为: mysqldump -ubackup -p34KpmyzUq db1 > db1.sql 如果是远程的MySQL服务,还可以加上IP和Port,例如: mysqldump -ubackup -p34KpmyzUq -h192.168

通过shell脚本进行数据库操作

橙三吉。 提交于 2019-12-05 08:19:02
在做一些日常的运维工作的时候,经常需要些一些shell脚本进行设备性能以及其它参数的监控。在过去的一年工作中,接触到的比较多的是对数据库中某些信息的监控。 于是就想到了用shell+mysql+crontab进行实现。 下面附上通过shell命令行非交互式的操作数据库的方法: mysql -hhostname -Pport -uusername -ppassword -e 相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作mysql的方法。 #!/bin/bash HOSTNAME="192.168.111.84" #数据库信息 PORT="3306" USERNAME="root" PASSWORD="" DBNAME="test_db_test" #数据库名称 TABLENAME="test_table_test" #数据库中表的名称 #创建数据库 create_db_sql="create database IF NOT EXISTS ${DBNAME}" mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${create_db_sql}" #创建表 create_table_sql="create table IF NOT EXISTS $

Redis(四):独立功能的实现

这一生的挚爱 提交于 2019-12-05 07:29:54
发布与订阅 Redis 的发布与订阅功能有 PUBLISH 命令, SUBSCRIBE 命令, PSUBSCRIBE 命令, PUBSUB 命令等组成。 客户端可以通过 SUBSCRIBE 命令订阅一个或多个频道,当其它客户端向被订阅的频道发送消息时,频道所有的订阅者都会收到这消息。 频道的订阅与退订 Redis会在 redisServer 中用 pubsub_channels 字典来记录订阅的客户端和频道的关系。其中字典的键是被订阅的频道,而字典的值是一个客户端链表,保存了订阅这个频道的所有客户端。 比如有一个客户端执行了 SUBSCRIBE HEllO ,另一个客户端执行 SUBSCRIBE HELLO WORLD ,那么此时 redisServer 中 pubsub_channels 的结构如下: 订阅频道 当客户端执行 SUBSCRIBE <channel1> <channel2...> 命令时,服务器会现在 pubsub_channels 字典中查询是否有对应的键,如果存在,则将客户端添加到键对应的链表的末端,如果不存在,则在字典中添加键,并关联新的链表,然后将客户端加入链表。 退订频道 当客户端执行 UNSUBSCRIBE 命令时,服务器会在 pubsub_channels 的字典中找到对应的键,然后遍历链表,找到客户端未自身的节点移除。如果移除完节点后,链表为空

(四)Flask 学习 —— 数据库

风格不统一 提交于 2019-12-05 00:57:14
数据库 回顾 在前面的章节中,我们已经创建了登录表单,完成了提交以及验证。在这篇文章中,我们要创建我们的数据库,并设置它,这样我们就可以保存我们的用户。 我们接下来讲述的正是我们上一章离开的地方,所以你可能要确保应用程序 microblog 正确地安装和工作。 从命令行中运行 Python 脚本 在这一章中我们会写一些脚本用来简化数据库的管理。在我们开始编写脚本之前,先来温习下 Python 脚本如何在命令行中执行。 如果你使用 Linux 或者 OS X 系统的话,脚本必须给予一定的权限,像这样: chmod a+x script.py 脚本中有一个 shebang ,它指明应该使用的解释器。一个脚本如果被赋予了执行权限并且有一个 shebang 行能够被简单地像这样执行: ./script.py <arguments> 在 Windows 上,上面的操作是没有作用的,相反你必须提供脚本作为选择的 Python 解释器的一个参数: flask\Scripts\python script.py <arguments> 为了避免键入 Python 解释器的路径,你可以把 microblog/flask/Scripts 加入到系统路径中,但是务必让它在你的 Python 解释器之前。 从现在起,在本教程中的 Linux / OS X 的语法将用于缩写。如果你是在 Windows 上

数据库版本管理工具dbdeploy(ant+hsqldb篇)

为君一笑 提交于 2019-12-04 10:10:25
注意:jdk版本必须是1.5或者更高版本 1、下载dbdeploy-dist-3.0M3-distribution.zip文件 2、解压改文件,随便在哪 3、打开命令面板,切换目录到example下 4、确定你安装了ant,并且配置好了环境变量。 5、执行ant命令 6、你将看到下面的输出信息 例如,为简单起见,使用一个HSQLDB,包括在分配本地文件的版本。dbdeploy支持其他数据库包含Oracle,MySQL和微软SQL服务器。 删除和创建新目录使例子每次都以一个干净的库开始。 上面表明:创建了一个新的目录 dbdeploy使用数据库中的某个表称为“changelog”来跟踪哪些脚本已经成功的执行。 上面表明:dbdeploy执行了createSchemaVersionTable.hsql.sql文件,并且有2/2个执行成功了 接下来就是扫描脚本目录 当前脚本应用到修改数据库(无) 有效的脚本有1、2、3 执行脚本1、2、3 最后执行成功完毕。 当再次执行:ant update-database 如下: 发现当前脚本应用到修改数据库(1、2、3) 有效的脚本有1、2、3 执行脚本(无) 来源: oschina 链接: https://my.oschina.net/u/260244/blog/322691