本篇文章给大家谈谈数据库的配置信息,以及数据库配置信息错误对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
不同的数据库有不同的查看方法,以oracle数据库为例:
Windows平台:
打开数据库安装目录下的SPFILESID.ora文件查看。
linux平台:
$oracle_home\dbs\spfilesid.ora
spring中配置数据源的几种常见方式:
#mysql 数据库配置(jdbc.properties)
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/databaseName?useUnicode=truecharacterEncoding=UTF-8
jdbc.username=root
jdbc.password=root
1.使用spring自带的数据源org.springframework.jdbc.datasource.DriverManagerDataSource;
方式一:
bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" p:location="/WEB-INF/jdbc.properties" /
bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"
p:driverClassName="${jdbc.driverClassName}"
p:url="${jdbc.url}"
p:username="${jdbc.username}"
p:password="${jdbc.password}" /
p标记需要:xmlns:p=""
DriverManagerDataSource源码实现:
public class DriverManagerDataSource extends AbstractDriverBasedDataSource {
public DriverManagerDataSource() {
}
public DriverManagerDataSource(String url) {
}
public DriverManagerDataSource(String url, String username, String password) {
}
public DriverManagerDataSource(String url, Properties conProps) {
}
public void setDriverClassName(String driverClassName) {
}
protected Connection getConnectionFromDriver(Properties props) throws SQLException {
}
protected Connection getConnectionFromDriverManager(String url, Properties props) throws SQLException {
}
}
方式二:
bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"
property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /
property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:ORCL" /
property name="username" value="root" /
property name="password" value="root" /
/bean
2.DBCP数据源;
DBCP(DataBase connection pool)。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去。
bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource"
property name="driverClassName" value="${jdbc.driverClassName}" /
property name="url" value="${jdbc.url}" /
property name="username" value="${jdbc.username}" /
property name="password" value="${jdbc.password}" /
/bean
DBCP实现:
class JdbcUtil
{
private static BasicDataSource bds;
static
{
if(bds==null)
{
bds= new BasicDataSource();
}
//分别设置数据库的连接参数
bds.setDriverClassName();
bds.setUrl();
bds.setUsername();
bds.setPassword();
}
public static Connection getConnection()
{
return bds.getConnection();
}
3.C3P0数据源;
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的有Hibernate,Spring等。
依赖jar包:c3p0-0.9.1.jar、c3p0-0.9.1.2.jar、c3p0-0.9.1-pre6.jar
c3p0与dbcp区别:
dbcp没有自动回收空闲连接的功能
c3p0有自动回收空闲连接功能
bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"
property name="driverClass"valueoracle.jdbc.driver.OracleDriver/value/property
property name="jdbcUrl"valuejdbc:oracle:thin:@localhost:1521:Test/value/property
property name="user"valueroot/value/property
property name="password"valueroot/value/property
!--连接池中保留的最小连接数。--
property name="minPoolSize" value="10" /
!--连接池中保留的最大连接数。Default: 15 --
property name="maxPoolSize" value="100" /
!--最大空闲时间,1800秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --
property name="maxIdleTime" value="1800" /
!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 --
property name="acquireIncrement" value="3" /
property name="maxStatements" value="1000" /
property name="initialPoolSize" value="10" /
!--每60秒检查所有连接池中的空闲连接。Default: 0 --
property name="idleConnectionTestPeriod" value="60" /
!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 --
property name="acquireRetryAttempts" value="30" /
property name="breakAfterAcquireFailure" value="true" /
property name="testConnectionOnCheckout" value="false" /
/bean
4.JNDI数据源;
如果应用配置在高性能的应用服务器(如WebLogic或Websphere等)上,我们可能更希望使用应用服务器本身
提供的数据源。应用服务器的数据源 使用JNDI开放调用者使用,Spring为此专门提供引用JNDI资源的
JndiObjectFactoryBean类。下面是一个简单的配置:
方式一:
bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"
property name="jndiName" value="java:comp/env/jdbc/bbt"/
/bean
value值即JNDI的名称
方式二:
bean id="queueTarget" class="org.springframework.jndi.JndiObjectTargetSource"
property name="jndiName"
valuequeue/testQueue/value
/property
/bean
方式三:
如果不使用JndiTemplate实现InitialContext环境变量的配置,则需要jndi.properties文件(放在classpath中,一般放在src下面),内容如下
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.provider.url=jnp://localhost:1099
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
方式四:
使用JndiTemplate实现InitialContext环境变量的配置,例如
bean id="queueTarget" class="org.springframework.jndi.JndiObjectTargetSource"
property name="jndiName"
valuequeue/testQueue/value
/property
property name="jndiTemplate"
ref local="jndiTemplate"/
/property
/bean
bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"
property name="environment"
props
prop key="java.naming.factory.initial"org.jnp.interfaces.NamingContextFactory/prop
prop key="java.naming.provider.url"jnp://localhost:1099/prop
prop key="java.naming.factory.url.pkgs"org.jboss.naming:org.jnp.interfaces/prop
/props
/property
/bean
1、把jtds-1.2.5.jar放到Tomcat目录里的lib目录下。如:D:\IntelliJ\tomcat7\lib
2、在D:\IntelliJ\tomcat7\conf目录里的context.xml文件里加上如下代码:
Context
WatchedResourceWEB-INF/web.xml/WatchedResource
Resource name="jdbc/sqlserver" auth="Container" type="javax.sql.DataSource"
driverClassName="net.sourceforge.jtds.jdbc.Driver"
url="jdbc:jtds:sqlserver://localhost:1433/yourDatabaseName"
username="username" password="password" maxActive="100" maxIdle="30"/
/Context
3、在你项目里的web.xml文件里加入如下内容:
!--配置数据源--
resource-ref
descriptionSqlserver Datasource/description
res-ref-namejdbc/sqlserver/res-ref-name
res-typejavax.sql.DataSource/res-type
res-authContainer/res-auth
/resource-ref
4、在你的代码里引用数据源:
private DataSource ds;
public LoginBean() {
try {
// 初始化查找命名空间
Context ctx = new InitialContext();
ds = (DataSource)ctx.lookup("java:comp/env/jdbc/sqlserver") ;
} catch (NamingException e) {
System.out.println("使用lookup找不到数据源.");
e.printStackTrace();
}
}
5、测试test.jsp:
%@ page language="java" import="java.util.*" pageEncoding="utf-8" %
%@ page import="java.sql.*"%
%@ page import="javax.sql.*"%
%@ page import="javax.naming.*"%
%!
final String JNDINAME = "java:comp/env/jdbc/sqlserver" ;
%
%
Connection conn = null ;
try
{
// 初始化查找命名空间
Context ctx = new InitialContext() ;
// 找到DataSource
DataSource ds = (DataSource)ctx.lookup(JNDINAME) ;
conn = ds.getConnection() ;
String sql="select passwd,logincount from credential where username=?";
PreparedStatement pwdQuery=conn.prepareStatement(sql);
pwdQuery.setString(1,"admin");
ResultSet result= pwdQuery.executeQuery();
if(!result.next()){
return;
}
System.out.println(result.getString("passwd")) ;
}
catch(Exception e)
{
System.out.println(e) ;
}
%
%=conn%
%
// 将连接重新放回到池中
conn.close() ;
%
Drupal的数据库连接信息通过文件settings.php中的变量$databases设置。变量$databases是一个二维的数组,第一维称为key,第二维称为target。使用这种方式可以处理多数据库和主从分离这样复杂的情况。
例如,假设有这样的配置:
$databases['default']['default']
=
array(
'database'
=
'drupal',);$databases['default']['slave1']
=
array(
'database'
=
'slave1',);$databases['default']['slave2']
=
array(
'database'
=
'slave2',);$databases['erp']['default']
=
array(
'database'
=
'erp',);$databases['oa']['default']
=
array(
'database'
=
'oa',);
默认的key是default,默认的target是default,因此大多数情况可以这样查询:
$result
=
db_query('SELECT
*
FROM
node');
//
drupal数据库
如果需要在指定的target中执行查询,可以这样:
$result
=
db_query('SELECT
*
FROM
node',
null,
array('target'
=
'slave1'));$result
=
db_query('SELECT
*
FROM
node',
null,
array('target'
=
'slave2'));
如果需要在指定的key中执行查询,可以这样:
DatabaseConnection::setActiveConnection('erp');$result
=
db_query('SELECT
*
FROM
erp_user');
一.首先把mysql的服务先停掉。
二.更改MySQL配置文件My.ini中的数据库存储主路径
三.将老的数据库存储主路径中的数据库文件和文件夹复制到新的存储主路径
将原文件夹中的所有文件和文件夹拷贝到你新建的文件夹目录下。
四.重启MySQL服务
五.验证更改数据库存储主路径的操作是否成功!
Copyright © 1999-2020, CSDN.NET, All Rights Reserved
mysql
登录
Linux 关于MYSQL数据库命令(查看,备份等操作) 原创
2016-04-19 11:22:33
fuwen1989
码龄7年
关注
1.Linux系统下启动MySQL的命令:
/ect/init.d/mysql start (前面为mysql的安装路径)
2.linux下重启mysql的命令:
/ect/init.d/mysql restart (前面为mysql的安装路径)
3.linux下关闭mysql的命令:
/ect/init.d/mysql shutdown (前面为mysql的安装路径)
4.连接本机上的mysql:
进入目录mysql\bin,再键入命令mysql -u root -p, 回车后提示输入密码。
5.打开数据库后的操作命令
查看数据库的命令
mysql show databases;
打开mydb库
mysql use mydb;
查看数据表的详细结构
mysql desc funtb;
新建数据库
mysql create database school;
新建表
mysql create table user01(
- id varchar(20) NOT NULL,
- userName varchar(10) NOT NULL,
- age int(11) default'0',
- sex char(2) NOT NULL default'm',
- PRIMARY KEY (id)
- )TYPE=InnoDB;
Query OK, 0 rows affected, 1 warning (0.02 sec)
mysqldesc student;
插入
mysql insert into student(id,stuName) values('1','tomcat');
删除
mysql delete from student where id='1';
删除表中所有数据
mysql truncate table student;
删除表
mysql drop table temp;
创建新用户并给予权限
mysql grant all privileges on *.* to dbuser@localhost identified by '1234'
with grant option;
更改Mysql用户密码
c:\Mysql5.0\binmysqladmin -u root -p password 1234
Enter password: ****
备份数据库及表(新版数据库不加3306端口号)
c:\mysql\bin\mysqldump –u root –p mydb d:\backup.sql
执行此语句将把数据库mydb 备份到D盘的backup.sql文件中
备份多个数据库表
c:\mysql\bin\mysqldump –u root –p 3306 school user01 user d:\backup.sql
此句的意思是把school库中的user01表和user表的内容和表的定义备份到D盘backup.sql文件中。
备份所有的数据库
c:\myql\binmysqldump –u root –p 3306 –all –databased:backup.sql
还原Mysql数据库
c:\mysql\bin\mysql –u root –p 3306 school
还原其中的一个表
mysql source d:\books.sql;
退出Mysql连接
mysqlquit(exit)
windows关闭mysql服务
C:\mysql\binnet mysql
数据库的配置信息的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于数据库配置信息错误、数据库的配置信息的信息别忘了在本站进行查找喔。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件至举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签: #数据库的配置信息
相关文章