Mysql安装

最近在centos 上安装mysql,由于以前无此经验,安装过程真是状况百出啊。
1.安装时候报错。
2.安装成功启动报错。
3.安装成功后,权限添加有问题,不可远程机器调用。

首先,安装过程严格按照[url]http://heylinux.com/archives/993.html[/url],用cmake编译安装。安装过程一直报“Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES OPENSSL_INCLUDE_DIR)”
查了很多解决不掉最后无奈把 -DWITH_SSL=system \ 参数去掉,终于安装成功。

接下来,启动mysql,无法启动成功包,Starting MySQL..The server quit without updating PID file 错误。又查了半天,最后参见[url]http://zhx870127-hotmail-com.iteye.com/admin/blogs/new[/url]中第4条解决掉的。

mysql终于可以启动,接下来用root账号可以进去了,哇~~可以执行sql。换台机器连接下试试……然后就连不上了。ERROR 1130: Host 'A'is not allowed to connect to this MySQL server
参考了下 [url]http://www.cnblogs.com/xyzdw/archive/2011/08/11/2135227.html[/url],不管如何,知道了问题所在,权限神马的问题。
一开始,死搬命令进行解决,好事多磨,没理解就是不行。
下面是我犯错的过程:
一.GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'admin'; 命令作用:填加了个admin用户并赋予localhost所有库权限(当时不理解),还是不支持其他机器连接,然后去user表里把localhost改为了127.0.0.1,结果本来admin登陆不了了,由于我修改user表的时候把root用户的也搞坏了 ,这下无论root还是admin都包没有localhost权限(MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost')。
二.下面需要先解决登陆问题啊,下面是解决步骤,
1.关闭mysql。
2.进去[color=red]mysql\bin[/color]目录。
3.输入[color=red]mysqld --skip-grant-tables[/color]回车。如果没有出现提示信息,那就对了。
4.新开一个命令窗口 输入 mysql命令回车(mysql\bin目录下输入此命令)。
5.这下就进入了,相当于登陆了,这时 use mysql 数据库,操作user表,修改admin或者root的某一条的host改为localhost,然后输入 flush privileges命令刷下下。
6.重新启动mysql,这时就能够登陆了。
三.接着解决远程机器无法连接的问题。查了资料发现只要再user表有一条host为%的记录,此记录对应用户就可供远程机器访问。此时只要改user表中admin用户的host字段即可,但是我为了保留admin的原始localhost记录,就想再给admin重新添加个权限。
于是登陆admin。执行GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'admin'; 但是仍然包没权限,搞不明白怎么回事。
查来查去问题查到了:添加admin用户我用的是GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'admin';命令,这样命令执行可以随便执行其他操作但是就是没有给别人分权限的权限。怎么解决呢?就是命令后添加[color=red]WITH GRANT OPTION[/color],此命令大概就是允许被授予权利的人把这个权利授予其他的人。
于是完整命令如下:[color=red]GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;[/color]权限可以登录用户通过SHOW GRANTS命令查看)。
于是添加权限成功。然后远程机器就可以访问了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值