mysql
General_Gong
这个作者很懒,什么都没留下…
展开
-
laravel的数据库操作方式终结(6)
1.Insert Statements(插入语句)用insert方法机型数据插入, 插入方法接受一个字段数组进行数据的插入:DB::table('users')->insert([ 'email' => '[email protected]', 'votes' => 0]);你可以一次性地插入多个记录,通过一个数组中加入多个数组,每个数组代表一个您要插入的记录:DB::table('users')->insert([ ['email' =>原创 2021-03-08 23:42:57 · 412 阅读 · 1 评论 -
laravel的数据库操作方式(5)
1.附加的Where条款whereBetween / orWhereBetween$users = DB::table('users') ->whereBetween('votes', [1, 100]) ->get();whereNotBetween / orWhereNotBetween$users = DB::table('users') ->whereNotBetween('votes',原创 2021-03-07 00:06:23 · 293 阅读 · 2 评论 -
laravel的数据库操作方式(4)
1.join连接数据表inner join从句use Illuminate\Support\Facades\DB;$users = DB::table('users') ->join('contacts', 'users.id', '=', 'contacts.user_id') ->join('orders', 'users.id', '=', 'orders.user_id') ->select('users原创 2021-02-25 17:15:46 · 220 阅读 · 0 评论 -
laravel的数据库操作方式(3)
1.数据聚集计算包括count, max, min, avg, sumuse Illuminate\Support\Facades\DB;$users = DB::table('users')->count();$price = DB::table('orders')->max('price');2.断言count记录存在的替换方式exists和doesntExistif (DB::table('orders')->where('finalized', 1)->exi原创 2021-02-24 16:55:31 · 237 阅读 · 0 评论 -
laravel的数据库操作方式(2)
1.检索表记录$users = DB::table('users')->get();foreach ($users as $user) { echo $user->name;}返回Illuminate\Support\Collection数据集,每个结果时PHP stdClass对象实例,通过对象对应的数据表字段获取结果2.检索一个单一行/列记录返回单一行记录$user = DB::table('users')->where('name', 'John')->原创 2021-02-24 10:33:18 · 196 阅读 · 0 评论 -
laravel的数据库操作方式(1)
1.查询数据select使用方式(1)数据绑定方式use Illuminate\Support\Facades\DB;DB::select('select * from users where active = ?', [1]);(2)名称绑定方式use Illuminate\Support\Facades\DB;DB::select('select * from users where id = :id', ['id' => 1]);2.添加数据use Illuminate\Su原创 2021-02-23 15:08:43 · 307 阅读 · 0 评论 -
laravel读写分离注意事项
先写入代码'mysql' => [ 'read' => [ 'host' => [ '192.168.1.1', '196.168.1.2', ], ], 'write' => [ 'host' => [ '196.168.1.3', ], ], 'sticky' => true, 'dr原创 2021-02-23 10:21:03 · 700 阅读 · 0 评论 -
mysql in 索引问题总结以及疑惑
1.当搜索字段较少时,(例如:0,1)数据达到一定数量使用in时则会进行全表扫描,当然也可以进行强制使用索引(force index),强制使用索引后的搜索速度会要慢于全表扫描。2.在有索引的情况且查询条件使用到索引列的话,会使用索引。select 语句使用了ignore index的话,则不会使用索引。疑问:使用in进行查询后会使用range(范围索引)。如果id的不是连续的,按照道理应该会进行全表扫描的。这个问题挺疑惑的,欢迎高手指点一二…...原创 2020-11-13 11:08:58 · 254 阅读 · 0 评论 -
mysql8.0首次连接报错
报错信息:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.解决办法:alter user user() identified by ‘密码’;原创 2020-07-13 16:32:19 · 155 阅读 · 0 评论 -
主要分布式锁的实现方式
分布式锁实现方式1.数据库实现分布式锁使用数据库事务中的锁如record lock来实现,通常使用悲观锁进行实现(select * … for update)缺点:性能底,存在超时的可能2.redis实现分布式锁使用redis可以使用setnx来实现分布式锁缺点:lock timeout存在并发的现象,失去了锁的意义存在redis单点故障,引入sentinel或者cluster方案,则更加复杂引入问题更多3.zookeeper实现分布式锁...原创 2020-07-13 10:59:50 · 117 阅读 · 0 评论 -
php7已经安装后,忘记安装mysqli,pdo_mysql等其他扩展
1.linux安装php7.4后没有./configure安装mysqli和pdo_mysql等其他扩展,可以通过安装包的制定扩展phpize安装2.php5以后不支持pecl针对mysql的扩展安装3.phpize安装前遇到问题一Cannot find autoconf. Please check your autoconf installation and the$PHP_AUTOCONF environment variable. Then, rerun this script.解决办法:原创 2020-07-02 17:05:47 · 646 阅读 · 0 评论 -
Mysql 锁区别,用法
锁机制因为Mysql支持多线程方式,所以可以同时处理多个客户端请求。有时为了防止客户端同时修改数据,我们使用锁操作完成。储存引擎InnoDB 是主流储存引擎并支持行级锁的,有更高的并发处理性能,下面来演示行锁的运行过程。MyIsam引擎在最新版本的MYSQL中已经废弃。行锁开销大,锁表慢行锁高并发下可并行处理,性能更高行锁是针对索引加的锁,在通过索引检索时才会应用行锁,否则使用表锁在事务执行过程中,随时都可以执行锁定,锁在执行 COMMIT或者ROLLBACK的时候释放非索引阻塞使用非原创 2020-06-12 12:01:15 · 146 阅读 · 0 评论 -
备份数据库脚本并且删除过去3天的备份文件
#!/bin/bashDbname=youdbnameDbuser=yourdbuserDbpasswd=yourdbpassedBackpath=/home/dbback/sqlzip/Logfile=home/dbback/log/db_backup.logNow=`date +%Y-%m-%d`Dumpfile=db-$nowBack_db(){Echo “----”$(date +%Y-%m-%d%t%A%t%T) “beginning database” ${dbname} “b原创 2020-06-05 23:14:43 · 213 阅读 · 0 评论