之前很少接触数据库,虽然培训过oracle,但是也只是简单的安装,备份和恢复,其他的一概不懂,还在琢磨中。甚至于大学时候学习的sql语句也是忘的差不多一干二净了。所以等于一切从零开始。

mysql的安装之前的博文也有讲过,见:http://7169900.blog.51cto.com/7159900/1266633 当然你也可以选择yum安装系统自带的mysql,直接yum -y install mysql*.启动mysql   /etc/init.d/mysqld start.

首先创建数据库:


mysql> create database jiradb;

Query OK, 1 row affected (0.00 sec)


创建好之后我们可以检查一下创建好的数据库

Query OK, 0 rows affected (0.00 sec)


mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| jiradb             |

| mysql              |

| test               |

+--------------------+

4 rows in set (0.01 sec)

接下来就是创建用户以及赋权限:

mysql> grant all on jiradb.*  to 'jira'@'localhost' identified by 'jira';

Query OK, 0 rows affected (0.00 sec)

解释下这条命令

grant all on jiradb.*(数据库.*代表所有表)  to 'jira'(用户名)@'localhost'(本地链接数据库) identified by 'jira'(密码);

赋予权限之后需要刷新权限表:

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

这样jira用户就已经创建成功,同时也赋予了起jiradb数据库的权限;

现在我们使用mysql客户端HeidiSQL来链接我们创建好的数据库jiradb

mysql客户端连接失败处理方法(can't connect to MySQL server on localhost'(10060))_第1张图片

这个就是权限问题了,可以查看一下jira用户的登录权限:

mysql> select host from user where user='jira';

ERROR 1046 (3D000): No database selected

奇怪怎么会报错了,原来是没有选择数据库

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A


Database changed

mysql> select host from user where user='jira';

+-----------+

| host      |

+-----------+

| localhost |

+-----------+

1 row in set (0.00 sec)

仔细看看,原来jira用户只有本地登录数据库的权限,那么我们现在添加一个远程登录数据库的权限;

mysql> grant all on jiradb.* to 'jira'@'%' identified by 'jira';

Query OK, 0 rows affected (0.00 sec)

刷新一下权限表

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

在查看一下权限;

mysql> select host from user where user='jira';

+-----------+

| host      |

+-----------+

| %         |

| localhost |

+-----------+

2 rows in set (0.00 sec)

mysql客户端连接失败处理方法(can't connect to MySQL server on localhost'(10060))_第2张图片

期中localhost只给了用户本地连接数据库的权限,而%则给了用户远程连接数据库的权限;

如果添加权限之后还是连接失败,就查看下iptables,关闭iptables,则可以正常连接。)