金沙棋牌app手机下载

当前位置:金沙棋牌 > 金沙棋牌app手机下载 > 数据库跨操作系统的最快迁移方法,MYSQL设置触发

数据库跨操作系统的最快迁移方法,MYSQL设置触发

来源:http://www.logblo.com 作者:金沙棋牌 时间:2019-09-06 03:21

先接二连三好数据库,然后张开侧面 对象财富管理器,选用数据库  右键单击 ---> 选用导入数据层应用程序

正文实例叙述了MYSQL设置触发器权限的办法,针对权限错误的景色特别实用。具体分析如下:

数据库文件相当的大,约有70G,
万一平时的搬迁,需求在原始数据库导出数据,然后在新数据库导入数据
经缜密思量,是或不是MySQL的数据库文件存款和储蓄格式在不一致的操作系统一样呢?
测量检验进度如下:
在陆十五个人SUN机器上设置陆拾伍人版的MySQL
停止MySQL服务
复制Windows上的叁10个人MySQL的数据文件(全体,除了system和日志等)到六15人机器上,
修改相应的文本和目录权限,
文件为 chmod 660
目录为 chmod 700
然后重启MySQL服务,运营符合规律化。
总结:
别以为那些看上去很简短,许两个人会错误的以为,差别的操作系统,其储存并非通用的,而以此例子申明,一样数据库数据的仓储结构是一点差别也没有的,完全能够一向拿来利用。
沾满中间境遇的二个小特别,那正是数据库的数额目录,必须有可执行的权柄,也便是7的权能,6的无法。
金沙棋牌app手机下载 1 
自身的测验进度
金沙棋牌app手机下载 2

本文首要介绍mysql的设置和骨干采纳、数据库导入导出和机关备份,然后介绍安全形式修改密码和mysql的全文本寻觅效果,最终记录了个体利用mysql中境遇的主题素材集。

根据提醒向导一步步走就行了

mysql导入数据提醒未有SUPESportage Privilege权限处理,如下所示:

您或然感兴趣的稿子:

  • MySQL数据库迁移data文件夹地方详细步骤
  • Linux下将数据库从MySQL迁移到玛丽亚DB的基础操作教程
  • 金沙棋牌app手机下载,关于MySQL数据迁移--data目录直接互换注意事项的详解
  • mysql5.5数据库data目录迁移方法详解
  • mysql 备份与迁移 数据同步方法
  • mysql中用来数据迁转移存入款和储蓄进度分享
  • 将phpstudy中的mysql迁移至Linux教程

金沙棋牌app手机下载 3

 

ERROR 1419 (HY000): You do not have the SUPER Privilege and Binary Logging is Enabled

起来设置:

sudo apt-get install mysql-common mysql-server

金沙棋牌app手机下载 4

导入function 、 trigger 到 MySQL database,报错:

归纳利用

建库

CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

建表

create table MyClass(id int(4) not null primary key auto_increment,name char(20) not null,sex int(4) not null default '0',degree double(16,2));

insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);

delete from MyClass where id=1;

update MyClass set name='Mary' where id=1;

select * from MyClass;

来得全部的view

select * from information_schema.TABLES where table_type='view' AND table_schema = '数据库名';

 

You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)”.

特别操作

创立客户:

create user xxx identified by ‘password’;

重命名:

rename user aaa to bbb;

剔除顾客:

drop user aaa;

来得权限:

show grants for aaa(用户);

加之权限:

grant select on xxx(数据库).* to aaa(用户);

授予某些数据库的漫天权力:

grant all on  xxx(数据库).* to aaa(用户);
grant all on  xxx(数据库).* to aaa(用户)@localhost;

取消授权:

revoke all on *.* from aaa(用户)@localhost;

修改权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%’   WITH GRANT OPTION;

如上操作完毕之后记得刷新权限:

flush privileges;

金沙棋牌app手机下载 5

原因: function / trigger 中有dangerous statements修改数据库,错误只在启用binary logging选项进行主从复制的服务器上出现。

导入导出

导出数据和表结构:

mysqldump -uroot -p abc(数据库名) > abc.sql
敲回车后输入密码

只导出表结构

mysqldump -uroot -p -d abc > abc.sql

导入数据库
1、首先建空数据库

mysql> create database abc;

2、导入数据库

mysql -u root -p abc(数据库名) < abc.sql

 

不留余地办法如下:

数据库自动备份

新建备份脚本xxx.sh,输入以下内容

#!/bin/bash

# 要备份的数据库名,多个数据库用空格分开
databases=("db1", "db2") 

# 备份文件要保存的目录,注意当前用户必须用户保存目录的读写权限
basepath='/root/backup/mysql/'

if [ ! -d "$basepath" ]; then
  mkdir -p "$basepath"
fi

# 循环databases数组
for db in ${databases[*]}
  do
    # 备份数据库生成SQL文件
    nice -n 19 /usr/bin/mysqldump -uroot -pcd32d5e86e --database $db > $basepath$db-$(date  %Y%m%d).sql

    # 将生成的SQL文件压缩
    nice -n 19 tar zPcf $basepath$db-$(date  %Y%m%d).sql.tar.gz -C $basepath $db-$(date  %Y%m%d).sql

    # 删除7天之前的备份数据
    find $basepath -mtime  7 -name "*.sql.tar.gz" -exec rm -rf {} ;
  done

  # 删除生成的SQL文件
  rm -rf $basepath/*.sql

选择crontab设置按期职分,在终点输入crontab -e,参预以下内容,此职务为每日3点自动实践。

0 3 * * * bash xxx.sh(此处填写脚本绝对地址)

 

1)导入数据的客商不仅仅供给CREATE ROUTINE, ALTER ROUTINE, CREATE T普拉多IGGE本田CR-V, ALTE奥迪Q3 TPAJEROIGGE纳瓦拉, CREATE FUNCTION 和 ALTEKuga FUNCTION 权限,还须要SUPEKugaprivileges 权限,使用超级顾客导入数据。

开启日志记录

[mysqld]
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
max_binlog_size = 1000M
binlog-format = row

金沙棋牌app手机下载 6

2)让具备客户全数实行类似functions的权柄,危急,不推荐,

康宁情势操作

跻身安全方式修改密码

mysqld_safe --skip-grant-tables &

select user,host,password from user where user="root"

今是昨非版本的mysql修改客商密码格局不雷同,供给查阅mysql->user中的密码字段,假设不是password的话正是authentication_string。

authentication_string的更动章程不太同样:

use mysql;
update user set authentication_string=PASSWORD("") where User='root';
update user set plugin="mysql_native_password";
flush privileges;
quit;
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

一经不是authentication_string,则可用以下措施。

update user set password=PASSWORD("your_password") where user="root" and host=“localhost"

 

 o by specifying it on the server start, like: –log-bin-trust-function-creators=1
 o by setting it to 1 through the SET GLOBAL statement, like:
mysql> SET GLOBAL log_bin_trust_function_creators = 1;

新操作

Mysql全文本寻找

Mysql5.6从此帮忙InnoDB,汉语的全文本搜索,内置使用n-gram为分词管理器,还补助普通话~。

创建索引

create fulltext index ngram_idx on tag(Title) with parser ngram;
或
alter table tag add fulltext index ngram_idx(Title) with parser ngram;

赢得协助的最小分词长度

SHOW VARIABLES LIKE 'ft_min_word_len';
//unix系统可在/etc/my.cnf中修改
[mysqld]
ft_min_word_len = 1

始于采纳

select Title,match(Title) against('清水') from tag ;

一对导入失利以及管理方案

3)假如不须求复制,也许是从库,关闭binlog,

恐怕出现的标题集:

  • 描述
2017-05-04T01:21:32.004560Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-05-04T01:21:32.023009Z mysqld_safe A mysqld process already exists

缓和格局:

$ sudo killall mysqld
  • 描述
2017-05-04T01:22:26.486677Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-05-04T01:22:26.488204Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.

消除办法:

sudo mkdir -p /var/run/mysqld
sudo chown -R mysql:mysql /var/run/mysqld
  • 描述
$ sudo /etc/init.d/mysql start
ies: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[....] Starting mysql (via systemctl): mysql.servicejob-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.

化解措施:

当前文件夹不是实际目录导致
cd到一个实际目录位置即可
  • 描述
sudo /etc/init.d/mysql start
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[....] Starting mysql (via systemctl): mysql.servicejob-working-directory: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.

按照提示:See "systemctl status mysql.service" and "journalctl -xe" for details.
但是并么有什么卵用,直接看mysql的log:/var/log/mysql/error.log
2017-05-04T01:37:56.583745Z 0 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

消除方法:

杀掉所有mysqld进程:killall mysqld 
再次sudo /etc/init.d/mysql start 成功
  • 描述
dpkg被锁定

杀鸡取卵办法

sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

十分1 : 在数据库master中拒绝 create database 权限

# binary logging – not required for slaves, but recommended
#log-bin=mysql-bin
# binary logging format – mixed recommended
#binlog_format=mixed

  管理方式:或者您日前登入的客户名从未该权限,能够直接行使Windows身份验证

企望本文所述对我们的MySQL数据库设计有所帮忙。

 

你也许感兴趣的篇章:

  • MySQL触发器 Update触发Insert失败
  • MySQL触发器运用于迁移和同步数据的实例教程
  • MySQL中触发器的根底学习课程
  • 浅谈MySQL中的触发器
  • MySQL触发器使用详解
  • mysql触发器(Trigger)简明计算和行使实例
  • Mysql中禁止使用与开发银行触发器教程【推荐】

特别2 : 不恐怕用排他锁锁定该数据库,以实践该操作。 (.Net SqlClient Data Provider)

  处理形式:可能又其它进度或地点在使用该数据库,重启数据库服务化解

 

本文由金沙棋牌发布于金沙棋牌app手机下载,转载请注明出处:数据库跨操作系统的最快迁移方法,MYSQL设置触发

关键词: