只需要轉(zhuǎn)移PHP 程序,需要備份對(duì)應(yīng)的MYSQL 數(shù)據(jù),然后到新的LINUX上傳網(wǎng)站程序,恢復(fù)網(wǎng)站數(shù)據(jù)即可??梢杂玫蹏?guó)的備份王先備份數(shù)據(jù),然后到新環(huán)境再恢復(fù)數(shù)據(jù)即可。。
我們一直強(qiáng)調(diào)網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站對(duì)于企業(yè)的重要性,如果您也覺(jué)得重要,那么就需要我們慎重對(duì)待,選擇一個(gè)安全靠譜的網(wǎng)站建設(shè)公司,企業(yè)網(wǎng)站我們建議是要么不做,要么就做好,讓網(wǎng)站能真正成為企業(yè)發(fā)展過(guò)程中的有力推手。專(zhuān)業(yè)網(wǎng)絡(luò)公司不一定是大公司,創(chuàng)新互聯(lián)建站作為專(zhuān)業(yè)的網(wǎng)絡(luò)公司選擇我們就是放心。
把A中的q1倒出來(lái) mysqldump -uadmin1 -padmin111 Q1 Q1.sql
然后再B中新建Q2,create database Q2
應(yīng)用Q2 use Q2
導(dǎo)入Q1 source Q1.sql
賦予用戶(hù) grant all privileges on Q2.* to 'admin2'@localhost identified by 'admin2222'
這樣就可以了!
這篇文章主要介紹了php實(shí)現(xiàn)redis數(shù)據(jù)庫(kù)指定庫(kù)號(hào)遷移的方法,涉及對(duì)于redis數(shù)據(jù)庫(kù)的操作技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了php實(shí)現(xiàn)redis數(shù)據(jù)庫(kù)指定庫(kù)號(hào)遷移的方法,分享給大家供大家參考。具體如下:
redis普通的數(shù)據(jù)庫(kù)遷移,只能整個(gè)redis
save,或者利用主從,當(dāng)然也可以安裝一個(gè)redis-dump,不過(guò)比較麻煩,這里提供一種php的腳本,實(shí)現(xiàn)指定庫(kù)號(hào)的遷移,其實(shí)也就是遍歷根據(jù)存儲(chǔ)類(lèi)型,讀出來(lái),插入新庫(kù),效果是這樣:
代碼如下:
[root@localhost
~]#
php
1.php
1/407
101/407
201/407
301/407
401/407
PHP實(shí)例代碼如下:
代碼如下:
?php
$from
=
'10.0.2.52:6379/7';
$to
=
'127.0.0.1:6379/7';
$from_redis
=
redis_init($from);
$to_redis
=
redis_init($to);
$keys
=
$from_redis-keys('*');
$count
=
0;
$total
=
count($keys);
foreach($keys
as
$key){
if(++$count
%
100
==
1){
echo
"$count/$totaln";
}
$type
=
$from_redis-type($key);
switch($type){
case
Redis::REDIS_STRING:
$val
=
$from_redis-get($key);
$to_redis-set($key,
$val);
break;
case
Redis::REDIS_LIST:
$list
=
$from_redis-lRange($key,
0,
-1);
foreach($list
as
$val){
$to_redis-rPush($key,
$val);
}
break;
case
Redis::REDIS_HASH:
$hash
=
$from_redis-hGetAll($key);
$to_redis-hMSet($key,
$hash);
break;
case
Redis::REDIS_ZSET:
$zset
=
$from_redis-zRange($key,
0,
-1,
true);
foreach($zset
as
$val=$score){
$to_redis-zAdd($key,
$score,
$val);
}
break;
}
}
function
redis_init($conf){
$redis
=
new
Redis();
preg_match('/^([^:]+)(:[0-9]+)?/(.+)?/',
$conf,
$ms);
$host
=
$ms[1];
$port
=
trim($ms[2],
':');
$db
=
$ms[3];
$redis-connect($host,
$port);
$redis-select($db);
return
$redis;
}
?
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
建表
phinx\bin\phinx.bat migrate -e production
建設(shè) phinx.yml文件
paths:
migrations: %%PHINX_CONFIG_DIR%%\database\migrations
seeds: %%PHINX_CONFIG_DIR%%\database\seeds
environments:
default_migration_table: phinxlog
default_database: development
production:
adapter: mysql
host: localhost
name: jitamin2
user: root
pass: ‘‘
port: 3306
charset: utf8
development:
adapter: mysql
host: localhost
name: development_db
user: root
pass: ‘‘
port: 3306
charset: utf8
testing:
adapter: mysql
host: localhost
name: testing_db
user: root
pass: ‘‘
port: 3306
charset: utf8
數(shù)據(jù)遷移命令如下:
phinx\bin\phinx.bat seed:run -e production
%%PHINX_CONFIG_DIR%%\database\seeds下面的文件示例CreateGroupsTable.php如下:
?php
/*
* This file is part of Jitamin.
*
* Copyright (C) Jitamin Team
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Jitamin\Foundation\Security\Role;
use Phinx\Seed\AbstractSeed;
class UserSeeder extends AbstractSeed
{
/**
* Run Method.
*/
public function run()
{
$data = [
[
‘username‘ = ‘a(chǎn)dmin‘,
‘password‘ = bcrypt(‘a(chǎn)dmin‘),
‘email‘ = ‘a(chǎn)dmin@admin.com‘,
‘role‘ = Role::APP_ADMIN,
],
];
$users = $this-table(‘users‘);
$users-insert($data)
-save();
}
}
折磨了我兩年多的老mac,終于還是決定換新機(jī)了。
老mac上已經(jīng)裝了很多東西,也是我一直忍著不換的原因。在換機(jī)之前還一直擔(dān)心,這么多東西要裝死我呀。還好 一百度發(fā)現(xiàn)優(yōu)秀的蘋(píng)果有自帶數(shù)據(jù)遷移的功能。
數(shù)據(jù)遷移 自行百度,很簡(jiǎn)單,過(guò)程中沒(méi)遇到啥問(wèn)題。
主要說(shuō)遇到的問(wèn)題
死活不讓建啊,百度說(shuō)需要在安全模式下關(guān)閉SIP
結(jié)果問(wèn)題2誕生了 這安全模式不論是 command+R 還是 command+option+R+P 還是 shift 統(tǒng)統(tǒng)進(jìn)不去,救命了,重啟了半天死活進(jìn)不去
百度了半天,最后找運(yùn)維大佬求助,找到了這個(gè)
哦,原來(lái)咱是11.4的版本,咱得用芯片的方式進(jìn)入安全模式
然后呢,這安全模式也怪坑的,賊難進(jìn)。
具體就是先關(guān)機(jī),然后按開(kāi)機(jī)鍵,然后死死按住開(kāi)機(jī)鍵,直到看到那一行小字變成另一行小字了就趕快放手了,繼續(xù)按著就關(guān)機(jī)了。。。
然后呢,咱要進(jìn)安全模式,咱不能選左邊的磁盤(pán),要選右邊的選項(xiàng),不然你要是進(jìn)了左邊的磁盤(pán)然后執(zhí)行那個(gè)命令 啥 csrutil disable 哎喲人家就一直提示咱 這得從安全模式下才能執(zhí)行
然后咱又懵了 啥?我這不是安全模式嗎???
正確操作是 進(jìn)右邊那個(gè)選項(xiàng),然后等他loading完,左上角有個(gè)實(shí)用工具,然后就在那里打開(kāi)終端,執(zhí)行csrutil disable這個(gè)命令,ok 成功了!
具體就是 按這個(gè)來(lái),只是版本如果是11的,得按芯片的方式進(jìn)入安全模式。
然后按文檔說(shuō)的,咱要重啟 再mount一下就完事了吧~好叻 那么問(wèn)題3也來(lái)了
啥玩意?咱好不容易進(jìn)了安全模式把那啥安全模式給關(guān)了,你咋還不讓掛載呢,這都整半天了,搞啥玩意?
再一頓百度,可算找到正解了
看看你的mac 的系統(tǒng)版本,如果是[Cataline] 也就是11之前的,使用方法一
mac的版本 11.0 之后的用下面,Mac Big Sur 使用方法二
方法二根本不需要用到安全模式,哈哈哈哈哈。。不知道哭好還是笑好
所以咱按方法二很快搞定了
然后啟動(dòng)nginx,之前配置nginx文件里一些路徑和現(xiàn)在有點(diǎn)出入,改一下
就行了。
之前是搞過(guò)的,但是遷移到新機(jī)后,phpstorm就一直提示應(yīng)用程序phpstorm不能打開(kāi),應(yīng)該是跟激活有關(guān)
進(jìn)到 /Applications/PhpStorm.app/Contents/MacOS 下發(fā)現(xiàn)