怎么备份mysql数据库

怎么备份mysql数据库,第1张

1、先用工具连接到数据库,如Navicat Premium

2、在要备份的数据库点右键,选择转储sql文件-结构和数据

3、然后选择备份路径和备份文件名,保存即可。

某天有人问了我一个有关 MySQL PROXY 用户该如何使用的问题。

原问题是这样的:MySQL 版本从 5.5 升级到 8.0 后,proxy 用户怎么无法使用了?我之前是按照你博客上写的方法使用的,但是在升级后,安装插件提示如下错误:

这个咋回事?

我给了一个大家都很讨厌的答案: 去看 MySQL8.0 官方手册吧。

auth_test_plugin.so 是 MySQL 5.5 的插件,仅限于测试环境,不推荐线上使用,仅限功能演示。之后的一系列大版本安装包里都不包含这个插件,所以使用方法有些差异。

我在下面示例中使用插件 mysql_native_password ,这个插件自带 proxy 用户功能,所以需要在配置文件里开启对应的开关,并重启 MySQL 实例:(如果使用 sha256_password , 应该把参数 sha256_password_proxy_users=ON 也加到配置文件里。)

使用 proxy 用户功能之前,需要安装 mysql_no_login 插件,阻止隐藏在 proxy 用户下的真实用户登录 MySQL 。

创建一个 proxy 用户 ytt_fake ,使用认证插件 mysql_native_password :

使用 Proxy 用户登录 MySQL :

确认下变量 proxy_user 的值是不是 ytt_fake :

使用 proxy 用户登录后,查看当前登录用户信息:用户实际上是 ytt_real 。

确认下权限:具有真实用户的所有权限。

用 proxy 用户创建表、插入记录、查询、销毁表:

由于真实用户 ytt_real 使用认证插件 mysql_no_login ,MySQL 不允许此用户登录:

spring+hibernate出错小结:

(1)java.lang.NoClassDefFoundError: org/hibernate/context/CurrentSessionContext

原因:出现这错误时,请更改hibernate的包,更新至最新或3.1以上

(2)java.lang.NoClassDefFoundError: javax/transaction/TransactionManager

原因:缺少jta.jar 或者是找不到hbm.xml文件导致sessionfactory出错,检查hbm文件路径是否正确,文件是否存在

(3) 错误:

Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update

或者org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: could not insert: [com.yourcompany.model.Login]bad SQL grammar [insert into mysql__login (name, password) values (?, ?)]nested exception is java.sql.SQLException: Table 'mysql.mysql__login' doesn't exist java.sql.SQLException: Table 'mysql.mysql__login' doesn't exist

原因与解决:因为Hibernate Tools(或者Eclipse本身的Database Explorer)生成*.hbn.xml工具中包含有catalog="***"(*表示数据库名称)这样的属性,将该属性删除就可以了

(4)org.springframework.orm.hibernate3.HibernateQueryException: undefined alias

原因:在spring配置文件中,可能你设置了<prop key="hibernate.query.factory_class">

org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop>,指定了HQL的解释器,请删除或更改另一个解释器org.hibernate.hql.ast.ASTQueryTranslatorFactory, 如果没有设置,请确认是否有写错了HQL语句,是否与POJO里的属性一样。注意区分大小写。

(5)quartz报错: Caused by: java.lang.NoSuchMethodError:

org.apache.commons.collections.SetUtils.orderedSet(Ljava/util/Set)Ljava/util/Set

原因是由于使用的commons-collections.jar版本太低导致的要使用3.*的才行,下载地址为:http://commons.apache.org/downloads/download_collections.cgi

选Binary下的zip下载,下载后将里的的commons-collections-x.x.x.jar放置到你的classpath里即可。记得删除旧的那个jar包

(6)org.springframework.beans.factory.CannotLoadBeanClassException:

Cannot find class [com.mchange.v2.c3p0.ComboPooledDataSource] for bean

这是因为你的sping配置文件是使用c3p0作数据池,而你的classpath里没有找到这个c3p0的jar包而导致的,下载一个jar导入classpath即可。

地址为:http://sourceforge.net/project/showfiles.php?group_id=25357&package_id=88527,如果是windows的就选择zip的下载。

(7)The Network Adapter could not establish the connection

请检查你的url,user,pwd,dialect等等是否正确

(8)java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass

原因:你更新了hibernate3.2的包,但你的classpath里可能存在hibernate-annotations.jar的包,删除之或更新至最新版本的包即可。

(9)java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager.<init>()V from class org.hibernate.cache.EhCacheProvider

原因:可能你更新了hiberante的包,导致原来的原来ehcache不行了,原来使用的是1.1的版本,换成1.5以上的正常,另还需要一个javassist.jar包

(10)Connections could not be acquired from the underlying database

大概的意思是说:不能连接当前所配置的数据库,检查你的URL链接字符串是否正确。

(11) org/apache/commons/pool/impl/GenericObjectPool 的解决方法

java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool原因:

找不到 Caused by:

java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool

就是Apache所提供的基本对象池。

解决:

到这里http://commons.apache.org/downloads/download_pool.cgi下载包,然后,把里面的commons-pool-x.jar复制到myEclipse的Referenced Libraries下.

(12)错误提示:java.lang.NoClassDefFoundError:

org/apache/commons/collections/LRUMap类没找到,

或org/apache/commons/collections/SequenceHashMap类没找到:

工程里的commons-collections.jar包与其它包不匹配导致的,例如如果你用

commons-beanutils-1.7.0.jar,commons-collections-3.2.jar时会出现你的那种问题,如果是commons-beanutils-1.7.0.jar,commons-collections-3.1.jar就不会就这种问题了...祝你好运啦

(13)Spring2.0与Hibernate3.0的错误解决

严重: action: null

org.springframework.beans.factory.BeanCreationException: Error creating bean with name

'sessionfactory' defined in ServletContext resource [/WEB-INF/beans-config.xml]: Initialization of bean failednested exception is java.lang.SecurityException:

class "org.apache.commons.collections.SequencedHashMap"'s signer information does not match signer information of other classes in the same package

java.lang.SecurityException: class "org.apache.commons.collections.SequencedHashMap"s signer information does not match signer information of other classes in the same package

at java.lang.ClassLoader.checkCerts(ClassLoader.java:775)

at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487)

at java.lang.ClassLoader.defineClass(ClassLoader.java:614)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at

org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1817)

at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:872).........

Spring2.0 AOP Liberaries里的asm2.2.3.jar和Hiberate中的生成代理用的asm.jar冲突,后来把asm2.2.3.jar删了才好使

或者

java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor

java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor

java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit

java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/StringLjava/lang/String[Ljava/lang/StringLjava/lang/String)V

这个错误是因为系统需要一个叫“asm.jar”的包,而这个包在SpingAop包中和Hibernate包中都有,而且不象话的是这两个包中的类org.objectweb.asm.ClassVisitor的方法visit方法签名竟然不一样,所以解决方法很简单,项目在加HIBERNATE3能力的时候不加库,直接用Spring的AOP的库就可以了。

在使用Spring的AOP编程时,会用到这几个lib:

asm-2.2.2.jar

asm-commons-2.2.2.jar

asm-util-2.2.2.jar

Hibernate使用如果lib:

asm.jar

asm-attrs.jar

其中asm-2.2.2.jar与asm.jar存在类上的冲突!

使用其中之一或两者都使用,可能会出现如下错误:

java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor

java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor

java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit。。。。。。

解决办法是:

去掉类路径上的关于Hibernate的3个lib

asm.jar

asm-attrs.jar

cglib-2.1.3.jar

保留Spring中的以下4个lib

asm-2.2.2.jar

asm-commons-2.2.2.jar

asm-util-2.2.2.jar

cglib-nodep-2.1_3.jar

或去掉asm-commons-2.2.2.jar

asm-util-2.2.2.jar

cglib-nodep-2.1_3.jar

(14) 错误提示:net.sf.cglib.core.CodeGenerationException:

java.lang.reflect.InvocationTargetException-->null

Caused by: java.lang.reflect.InvocationTargetException

Caused by: java.lang.SecurityException:

class "com.wuwei.struts.bean.User

EnhancerByCGLIB

1016ffbf"'s signer information does not match signer information of other classes in the same package

在….hbm.xml文件中,将class标签的lazy属性改为false(默认为true)

<class name="com.wuwei.struts.bean.User" table="user" lazy="false">。如果有schema="dbo" catalog="test"配置信息,请将其删除


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7497389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存