小编Mar*_*zer的帖子

如何在STL设置下找到小于搜索键的第一个值?

例如,我有一组值std::set:

{1, 2, 3, 5, 6}
Run Code Online (Sandbox Code Playgroud)

和搜索键,让它成为4,我想找到第一个val.不到搜索键,3在这种情况下,该怎么办?

在Java中有功能greater(),lower()TreeSet

c++ stl

12
推荐指数
1
解决办法
8826
查看次数

没有密码的mysqldump在crontab中

我尝试使用mysqldump和cronjobs备份我的数据库.

好吧,我将以下命令添加到用户root的crontab:

*/30 * * * * mysqldump -u root -pVERYSECUREPASSWORD --all-databases > /var/www/cloud/dump_komplett.sql &> /dev/null
Run Code Online (Sandbox Code Playgroud)

这到目前为止工作正常,但问题是密码是在此命令中设置的.

所以我想要包含一个看起来像这样的.database.cnf文件

[mysqldump]
user=root
password=VERYSECUREPASSWORD
Run Code Online (Sandbox Code Playgroud)

并将mysqldump命令更改为

mysqldump --defaults-extra-file="/var/crons/mysql/.database.cnf" --all-databases -u root > /var/www/cloud/dump_komplett.sql
Run Code Online (Sandbox Code Playgroud)

解决这个问题.

但是此命令失败并显示错误:

mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect
Run Code Online (Sandbox Code Playgroud)

我不知道出了什么问题.

以下是我也尝试过的一些命令:

mysqldump --defaults-extra-file="/var/crons/mysql/.database.cnf" --all-databases > /var/www/cloud/dump_komplett.sql
mysqldump --defaults-file="/var/crons/mysql/.database.cnf" --all-databases > /var/www/cloud/dump_komplett.sql
mysqldump --defaults-file="/var/crons/mysql/.database.cnf" --all-databases -u root > /var/www/cloud/dump_komplett.sql
Run Code Online (Sandbox Code Playgroud)

和.database.cnf内容我也尝试过:

[client]
user=root
password=VERYSECUREPASSWORD

[mysqldump]
host=localhost
user=root
password=VERYSECUREPASSWORD

[client]
host=localhost
user=root
password=VERYSECUREPASSWORD
Run Code Online (Sandbox Code Playgroud)

mysql backup cron mysqldump crontab

11
推荐指数
2
解决办法
2万
查看次数

Git:pre-receive hook只允许合并而不是直接提交到master

pre-receive在git远程分支上创建一个钩子有问题,做我想要的.

有什么问题?

不允许直接提交到主分支.只允许合并到主分支中.

到目前为止,我的解决方案是检查主用户受到影响的用户推送是否有变化.但问题是,如果更改是直接提交或合并,我无法区分.

#!/bin/sh
while read oldrefid newrefid refname
do
if [ "$refname" = "refs/heads/master" ]; then
        echo $(git merge-base $oldrefid $newrefid)
        echo "---- Direct commit to master branch is not allowed ----"
        echo "Changes only with a merge from another branch"
        exit 1
fi
done
Run Code Online (Sandbox Code Playgroud)

有谁有想法,如何检查更改是否合并?

谢谢!

git git-merge githooks git-commit

8
推荐指数
2
解决办法
1818
查看次数

标签 统计

backup ×1

c++ ×1

cron ×1

crontab ×1

git ×1

git-commit ×1

git-merge ×1

githooks ×1

mysql ×1

mysqldump ×1

stl ×1