Now it's MySQL's turn...
Some problems encounted this afternoon, when trying to setup/test mysql capabilities on hypnos and virgil.
1.ERROR 2003 (HY000): Can't connect to MySQL server on 'server-name' (111)
access locally (i.e. from localhost) is fine, when trying remotely got this error. when tried with mysql++ library, got the following:
terminate called after throwing an instance of 'mysqlpp::ConnectionFailed'
what(): Can't connect to MySQL server on 'hypnos' (111)
After some searches, it appears this is just indicate network issue, not to do with mysql authentication.
TWO
most likely reasons are:
a.
with --skip-networking
on it will
not accept TCP/IP connections at all.
b. with
--bind-address=127.0.0.1
, it
will listen for TCP/IP connections only locally on the
loopback interface and will not accept remote connections.
did find skip-networking option from mysql-workbench and it's off, not find bind-address at all from intotal maybe hundreds options, but it turned out it IS bind-address THE ARCH CRIMINAL!!!
solution: comments out bind-address=127.0.0.1
from /etc/mysql/my.cnf
Some other tips came across during the search
2. UFW -- The default firewall configuration tool for Ubuntu.
https://help.ubuntu.com/community/UFW
http://blog.bodhizazen.net/linux/firewall-ubuntu-gufw/
http://blog.bodhizazen.net/linux/fir...untu-desktops/
http://blog.bodhizazen.net/linux/fir...buntu-servers/
example:
To allow/deny incoming tcp and
udp packet on port 53
sudo ufw allow/deny 53
example:
To allow/deny incoming tcp packets on port 53
sudo ufw allow/deny 53/tcp
example:
To allow/deny incoming udp packes on port 53
sudo ufw allow/deny 53/udp
3. Error communicating with gnome-keyring-daemon, when initially using mysql-workbench
to connect to mysql database
a good collection of threads:
http://ubuntuforums.org/showthread.php?p=9359283
1)
gnome-keyring-daemon
is a pie
相关文档:
ysql默认是不允许远程连接的,因为有很大的安全隐患。
需要手动增加可以远程访问数据库的用户。
方法一、本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"
#mysql -u root -proot
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
my ......
公司的服务器是CentOS 5.4(Final)版的,今天在上面安装了一回mysql5.5,记录如下:
1、从http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.5.2-m2.tar.gz 下载源码安装包到/usr/local/src
2、tar zxvf mysql-5.5.2-m2.tar.gz 解压到/usr/local/src/mysql-5.5.2-m2下
cd mysql-5.5.2-m2/
&n ......
所需软件源代码包:
httpd-2.2.4.tar.gz mysql-5.0.27.tar.gz php-5.2.1.tar.bz2
freetype-2.3.2.tar.gz gd-2.0.34.tar.gz jpegsrc.v6b.tar.gz
libpng-1.2.8.tar.bz2 libxml2-2.6.24.tar.bz2 zlib-1.2.2.tar.gz
安装顺序:apache -> mysql ......
/*演示一个JDBC程序,从Mysql的LMD数据库中读出表admin的一个信息*/
import java.sql.*;
public class TestMysqlConnection {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = ......
在向表中插入数据的时候,经常遇到这样的情况:1. 首先判断数据是否存在; 2. 如果不存在,则插入;3.如果存在,则更新。
在 SQL Server 中可以这样处理:
if not exists (select 1 from t where id = 1) insert into t(id, update_time) values(1, getdate()) else update t set update_time = getdate() where id = ......