小编Sha*_*dow的帖子

无法将 max_open_files 的数量增加到 4096 以上(请求:4214)

我在 Linux Debian 9(stretch)上安装了 MariaDB + Nginx。安装 MariaDB 并尝试启动它后,我收到错误消息: [Warning] Could not increase number of max_open_files to more than 4096 (request: 4214). 所以我用谷歌搜索它,它告诉我应该更改LimiNOFILE为 10000 in /etc/systemd/system/mysql.service. 我这样做了,做了 deamon-reload 并且它什么也没做。我仍然收到相同的错误消息。我尝试重新安装 MariaDB,但这也无济于事。我还在LimitMEMLOCK=10000文件的最后添加了,这并没有改变任何东西。

完整追溯:

关联

先感谢您

mysql linux mariadb

6
推荐指数
1
解决办法
1万
查看次数

在休眠中使用已弃用的保存方法的替代方法

我使用以下代码将人员对象保存到数据库中:

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class Main {

    public static void main(String[] args) {
        Person person = new Person();
        person.setID(1);
        person.setName("name-1");
        person.setAddress("address-1");

        Configuration configuration = new Configuration().configure().addAnnotatedClass(Person.class);
        SessionFactory sessionFactory = configuration.buildSessionFactory();
        Session session = sessionFactory.openSession();
        Transaction transaction = session.beginTransaction();
        session.save(person);
        transaction.commit();
    }
}
Run Code Online (Sandbox Code Playgroud)

我发现save方法已被弃用。我们应该使用什么替代方法?

java hibernate

6
推荐指数
1
解决办法
1万
查看次数

从mysql中的xml中提取值

我试图从xml中提取值.我在xml具有属性时遇到问题.喜欢以下存储过程

DELIMITER $$
DROP PROCEDURE IF EXISTS `excel`.`insert_items` $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `insert_items`()
BEGIN
SET @xml = '<items><item>
        <value columntype="0">Single Line Text_01</value>
    <value columntype="1">Single Line Text_12341</value>
    <value columntype="2">Single Line Text_21</value>
    <value columntype="3">Single Line Text_31</value>
    <value columntype="4">Single Line Text_41</value>
    </item>
</items>';
SELECT @columntype, ExtractValue(@xml, 'items/item/value[items/item/value/@columntype=0]');    
END $$
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

xml mysql

5
推荐指数
1
解决办法
1万
查看次数

插入触发器在从节点js app发生插入后不起作用

我有一个后插入触发器.调用存储过程.当我运行直接查询时,它运行良好.但是当我通过节点js app插入数据时.它甚至不在主表中插入数据.触发器和存储过程中没有任何错误,因为它适用于表的直接插入查询.

dbObject.create(data, function(err, response){
        if (err) {
            //console.log("err", err);
            res.status(500).jsonp(response)
        }
        console.log("response", response);
        dbObject.find({SnsId: SnsId}, '*' , {}, 0, 0, {}, function(err, resp){
            if (err) {
                //console.log("err", err);
                res.status(500).jsonp(err)
            }
            console.log("response", resp);
            res.jsonp(resp);
        });
    });
Run Code Online (Sandbox Code Playgroud)

触发代码 -

DELIMITER $$
CREATE TRIGGER `copytoSensorMapTrigger` AFTER INSERT ON test4.`SENSORS`
FOR EACH ROW
BEGIN
   CALL copyToSensorMap(NEW.`SnsId`,NEW.`SnsState`);
END;
Run Code Online (Sandbox Code Playgroud)

存储过程代码 -

DELIMITER $$
 CREATE PROCEDURE copyToSensorMap(IN snsid bigint(20),IN sns_state varchar(128))
   BEGIN
   DECLARE  color varchar(128);
   INSERT INTO test3.`SENSOR_MAP` (`SENSOR_ID`, `SENSOR_NAME`, `USER_ID`, `HOST_ID`,  `SENSOR_STATE`)
    SELECT `SnsId`,
   `SnsName`,`SnsOwner`,`HostId`,`SnsState` …
Run Code Online (Sandbox Code Playgroud)

javascript mysql triggers node.js

5
推荐指数
1
解决办法
330
查看次数

Laravel 5.3 ModelFactory Seeder调用未定义的方法Illuminate\Database\Query\Builder :: posts()

我试图使用laravel ModelFactory创建一个使用一些虚拟数据填充表格的播种表.我一直收到这个错误,而且我没有修复它的想法.

'种族'模式

<?php

namespace App\Game;

use Illuminate\Database\Eloquent\Model;

class Race extends Model
{
//
    public $timestamps = false;
    protected $fillable = ['name','description','icon'];
}
Run Code Online (Sandbox Code Playgroud)

文件2模型工厂文件

$factory->define(App\Game\Race::class, function (Faker\Generator $faker) {
    return [
        'name' => $faker->name,
        'description' => $faker->text,
        'icon' => $faker->url,
    ];
});
Run Code Online (Sandbox Code Playgroud)

文件3播种机文件

<?php

use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;

class RacesTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        //
        factory(App\Game\Race::class, 10)->create()->each(function($u) {
           $u->posts()->save(factory(App\Game\Race::class)->make());
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误调用未定义的方法Illuminate\Database\Query\Builder :: posts()

当我打电话给'php …

php laravel laravel-5.3

5
推荐指数
1
解决办法
4244
查看次数

MySQL错误:sql_mode = only_full_group_by

我有这个脚本,我习惯于为动态结果做一个简单的投影

    SELECT 
    M.nom_utilisateur, 
    SUM(M.montant_bulletin ) as Montant_Total_BS,
    SUM(M.montant_payer   ) as Montant_Total_payer,
    COUNT(M.ref_bs ) as nbr_bs_total,

(SELECT COUNT(*) FROM mutuelle_bi.`Mutuelle` WHERE nom_utilisateur = M.nom_utilisateur  AND (M.nom_assurence  = "Star" AND M.etat_bs = "Remboursé")) as nbr_bs_total_payer,

(SELECT COUNT(*) FROM mutuelle_bi.`Mutuelle` WHERE nom_utilisateur = M.nom_utilisateur  AND (M.nom_assurence  = "Star" AND M.etat_bs = "Non remboursé")) as nbr_bs_non_payer,

(SELECT COUNT(*) FROM mutuelle_bi.`Mutuelle` WHERE nom_utilisateur = M.nom_utilisateur  AND (M.nom_assurence  = "Star" AND M.etat_bs = "En cours")) as nbr_bs_en_cours,

(SELECT COUNT(*) FROM mutuelle_bi.`Mutuelle` WHERE nom_utilisateur = M.nom_utilisateur  AND …
Run Code Online (Sandbox Code Playgroud)

mysql

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

Oracle Warehouse Builder中记录链接的匹配合并操作

我是OWB的新手并执行Match-Merge操作.

输入数据
源(数据库):22,33,000条记录
目标:1000条记录

实际产出
20,00,000条记录

预期输出
匹配 - 合并表:<= 1000条记录

我无法弄清楚为什么我在输出匹配合并表中得到如此巨大的数字是出乎意料的.

请帮助我指导将实际输出减少到大约所需的所有步骤.1000条记录.

merge oracle11g oracle-warehouse-builder

5
推荐指数
1
解决办法
165
查看次数

具有单例模式的 PHP 数据库类

在数据库类中创建查询函数(必须使用单例模式创建)是一个好习惯吗?或者更好地创建另一个带有数据库接口的类,或类似的东西,并在构造函数中获取数据库实例?(对不起我的英语不好 :)

<?php
class Database 
{
    private static $_pdo = null;

    private static function getDatabase() {
        if (self::$_pdo === null) {
            self::$_pdo = new PDO("mysql:host=localhost;dbname=contact_manager", 'root', '');
        }

        return self::$_pdo;
    } 

    public static function query($query, $parameters) {
        Database::_toArray($parameters);
        $query = self::getDatabase()->prepare($query);
        $query->execute($parameters);
        $result = $query->fetchAll(PDO::FETCH_ASSOC);

        return $result;
    }

    private static function _toArray(&$parameters) {
        if (!is_array($parameters)) {
         $parameters = array($parameters);   
        }
    }

    private function __construct() { }
    private function __clone() { }
    private function __wakeup() { }
}
?>
Run Code Online (Sandbox Code Playgroud)

php singleton

5
推荐指数
1
解决办法
1336
查看次数

使用'和'并在Django ORM中使用'&'之间的区别

我有查询,显示不同的结果,当我使用&

criteria1 = Q(id__gte=802, id__lte=1000)
criteria2 = Q(country_id__contains='UK')
Run Code Online (Sandbox Code Playgroud)

我一直在使用:

q = Mymodel.objects.filter(criteria1 & criteria2)
Run Code Online (Sandbox Code Playgroud)

但在这个特殊情况下,当我使用& 它总是输出一行. (我也查了打印q.query(),查询出来就好了)

但是,当我使用不是&时.查询提供正确的输出

q = Mymodel.objects.filter(criteria1 and criteria2)
Run Code Online (Sandbox Code Playgroud)

引擎盖下究竟发生了什么?

python django django-orm

5
推荐指数
1
解决办法
77
查看次数

在 Mac 上安装 mysqlclient 时出错

我正在尝试在 macOS BigSur(在 M1 芯片 mac 上运行)上安装 mysqlclient 作为使用 MySQL DB 实现 django 项目的一部分。但是,我收到以下错误:

Collecting mysqlclient
  Using cached mysqlclient-2.0.3.tar.gz (88 kB)
Using legacy 'setup.py install' for mysqlclient, since package 'wheel' is not installed.
Installing collected packages: mysqlclient
    Running setup.py install for mysqlclient ... error
    ERROR: Command errored out with exit status 1:
     command: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/rs/vv5212l55ys7lk0vx4p87gxw0000gn/T/pip-install-73_o12ze/mysqlclient_23e4f763c971433c863260eda891b9d0/setup.py'"'"'; __file__='"'"'/private/var/folders/rs/vv5212l55ys7lk0vx4p87gxw0000gn/T/pip-install-73_o12ze/mysqlclient_23e4f763c971433c863260eda891b9d0/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/rs/vv5212l55ys7lk0vx4p87gxw0000gn/T/pip-record-jl3d35rj/install-record.txt --single-version-externally-managed --compile --install-headers /Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/mysqlclient
         cwd: /private/var/folders/rs/vv5212l55ys7lk0vx4p87gxw0000gn/T/pip-install-73_o12ze/mysqlclient_23e4f763c971433c863260eda891b9d0/
    Complete output …
Run Code Online (Sandbox Code Playgroud)

python macos installation mysql-connector apple-m1

5
推荐指数
1
解决办法
2660
查看次数