出现这种情况一般都是由于系统升级,或其他原因可能会导致这个问题。
一、原因是某种情况下导致”/usr/local/MySQL/data”的拥有者发生了改变,所以只需要将其拥有者修改为“mysql“就可以了。
在终端中运行:
二、如果此方法无法解决,那么只能采取第二个方法,重新安装mysql。
mac 下载 mysql 的方法:
1. sudo rm /usr/local/mysql (这一步: 必须的)
2. sudo rm -rf /usr/local/mysql* (这一步: 必须的)
3 sudo rm -rf /Library/StartupItems/MySQLCOM (这一步: 可选)
4 sudo rm -rf /Library/PreferencePanes/My* (这一步: 可选)
5 vim /etc/hostconfig (and removed the line MYSQLCOM=-YES-) (这一步: 可选)
6 rm -rf ~/Library/PreferencePanes/My*
7 sudo rm -rf /Library/Receipts/mysql*
8 sudo rm -rf /Library/Receipts/MySQL*
9 sudo rm -rf /var/db/receipts/com.mysql.*
按照以上步骤, *** 作一遍, 再重新安装 MySQL, 启动正常了。
Mac -》 System preference下, 打开 MySQL。
mysql的数据连接池怎么配置文件连接先建立一些连接,并且这些连接允许共享,因此这样就节省了每次连接的时间开销。Mysql数据库为例,连接池在Tomcat中的配置与使用。
1、创建数据库Student,表student
2、配置server.xml文件。Tomcat安装目录下conf中server.xml文件。
<GlobalNamingResources>
<Resource
name="jdbc/DBPool"
type="javax.sql.DataSource"
password=""
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://localhost:3306/student"
maxActive="3"
/>
</GlobalNamingResources>
name:指定连接池的名称
type:指定连接池的类,他负责连接池的事务处理
url:指定要连接的数据库
driverClassName:指定连接数据库使用的驱动程序
username:数据库用户名
password:数据库密码
maxWait:指定最大建立连接等待时间,如果超过此时间将接到异常
maxIdle:指定连接池中连接的最大空闲数
maxActive:指定连接池最大连接数
3、配置web.xml文件。
<web-app>
<resource-ref>
<description>mysql数据库连接池配置</description>
<res-ref-name>jdbc/DBPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
</web-app>
4、配置context.xml文件
与server.xml文件所在的位置相同。
<Context>
<ResourceLink
name="jdbc/DBPool"
type="javax.sql.DataSource"
global="jdbc/DBPool"
/>
</Context>
5、测试
DataSource pool = null
Context env = null
Connection conn = null
Statement st = null
ResultSet rs = null
try{
env = (Context)new InitialContext().lookup("java:comp/env")
//检索指定的对象,返回此上下文的一个新实例
pool = (DataSource)env.lookup("jdbc/DBPool")
//获得数据库连接池
if(pool==null){out.printl("找不到指定的连接池!")}
con = pool.getConnection()
st = con.createStatement()
rs = st.executeQuery("select * from student")
}catch(Exception ex){out.printl(ne.toString())}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)