首页 > 代码库 > mysql安装

mysql安装

1、安装
查看是否已经安装了MYSQL
rpm -qa mysql

mysql-4.1.7-4.RHEL4.1

点开add/remove programe里面的mysql的detail
勾上mysql-server

2、启动
来检测mysql是否已经启动
service mysqld status

我们可以用三种方法来启动Mysql: 
方法一:使用service命令来
启动Mysql 
service mysqld start 
停止mysql
service mysqld stop
方法二:使用mysqld脚本来启动Mysql: 
/etc/init.d/mysql start 
方法三:使用safe_mysqld实用程序启动Mysql服务,此方法可以使用相关参数 
safe_mysqld& //使用&表示将safe_mysqld放在后台执行。

3、登陆
修改密码
mysqladmin -u root password 
mysqladmin -u root password ‘kaishi‘

这里的“密码”为我们欲新设的密码。系统会提示我们输入旧密码(若是mysql刚安装,则默认密码为空)

----------------------------------------------------------------------------------------------------------------------------------

Linux上安装Mysql后除了本机其他机器不能访问的问题

本机可以登陆了。但是其他机器的客户端登陆报错。
ERROR 1130 (00000): Host ‘xxx.xxx.xxx.xxx‘ is not allowed to connect to this MySQ
L server

首先查看了iptables的设置,添加开放了3306端口
iptables -A INPUT -p tcp -m tcp --sport 3306 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 3306 -j ACCEPT

service iptables save
service iptables restart

还是其他机器不能访问,估计是MYSQL权限问题。

在本机登陆
mysql -h localhost -u root -pkaishi
show databases;
use mysql;
select Host, User, Password from user;
+-----------------------+------+-------------------------------------------+
| Host | User | Password |
+-----------------------+------+-------------------------------------------+
| localhost | root | *18F54215F48E644FC4E0F05EC2D39F88D7244B1A |
| localhost.localdomain | root | |
| localhost.localdomain | | |
| localhost | | |
+-----------------------+------+-------------------------------------------+
可以看到如上结果,只有localhost才设置了访问的权限

进入mysql,创建一个新用户user: 
格式:grant 权限 on 数据库名.表名 用户@登录主机 identified by "用户密码"; 查看结果,执行: 
use mysql; 
select host,user,password from user;

可以看到在user表中已有刚才创建的user用户。host字段表示登录的主机,其值可以用IP,也可用主机名,将host字段的值改为%就表示在任何客户端机器上能以user用户登录到mysql服务器,建议在开发时设为%。

update user set host = ‘%‘ where user = ‘sillycat‘;

flush privileges;
修改了权限后需要执行以上语句生效

grant   select , update , insert , delete   on  easyview. *   to  sillycat @192 . 168.10 . 103  identified  by  "kaishi";


 

----------------------------------------------------------------------------------------------------------------------------------

授权法:

mysql > grant   all   privileges   on   * . *   to  username@’remotehost’ identified  by  ‘password’  with   grant   option ;

 

该语句表示username可以从远程主机remotehost登录服务器,登录密码是password,并且将所有数据库上的所有表的所有权限都授权给username,同时usrname还可以将权限授权给其他用户。该语句还应该使用flush privileges 使权限生效。

----------------------------------------------------------------------------------------------------------------------------------

在Mysql中使用Grant语句提升了权限使所有IP都能访问Mysql之后还是不能在其他机器登录Mysql,最后上网查询资料终于发现是防火墙的问题

 

发现原来是3306端口根本没有开放被防火墙屏蔽掉了

 

在防火墙中添加该端口 vi /etc/sysconfig/iptables

添加-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

更改完了之后输入service iptables restart

实验中始终不能进行远程访问,网上的同志说是防火墙的问题,我把两台主机的哦防火墙都关闭了,但还是不能进行访问,后来进行分析实验过程得知Linux的主机能访问windows的服务器,但Windows的客户端不能访问linux的服务器,我想主要还是linux主机的问题,分析可能是端口的原因,第一次粗心的只将mysql3306 UDP端口设为可信,后来仔细检查原来3306端口还有TCP的可信端口,将3306TCP端口设为可信端口,并在/etc/sysconfig/iptabls文件夹中检查其端口设置的内容,可以发现两者都设置了,重启iptable服务service start iptables就可以进行远程访问了。

mysql安装