腾讯云Debian系统安装Mysql使其支持远程连接
安装Mysql:
首先使用apt-get命令安装Mysql服务端和客户端
# sudo apt-get install libmysqlclient-dev mysql-common mysql-client mysql-server
安装过程中一般会要求输入密码,完成后启动Mysql:
# /etc/init.d/mysql start
设置安全策略:
mysql_secure_installation
安装chkconfig并将Mysql添加到开机自启列表:
# apt-get install chkconfig
# chkconfig -add mysql
允许远程连接Mysql:
如果端口开放仍然连接不上Mysql有可能是监听地址的原因。
输入命令查看监听地址:
netstat -nutlp|grep mysql
如果第三个参数的监听地址是0.0.0.0 ,表示该mysql允许所有IP地址进行连接,
监听地址是127.0.0.1,表示该mysql只允许所在服务器本机连接,外网是无法连接的,
需要更改Mysql的监听地址,在Mysql目录下编辑my.cnf文件:
# vim /etc/mysql/my.cnf
搜索到bind-address参数,将其改为
bind-address=0.0.0.0
然后登录到Mysql添加远程登录账号,远程连接需要使用这个账号密码。
# mysql -u root -p
> grant all on *.* to root@'%' identified by '123456';
> flush privileges;
> exit
mysql 8命令:
> use mysql
> update user set host='%' where user ='root';
> FLUSH PRIVILEGES;
> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
退出后输入命令重启MySql即可远程连接。
# /etc/init.d/mysql restart
命令详解
字符 | 说明 |
---|---|
*.* | 第一个*表示库,第二个*表示表; *.*对全部数据库的全部表授权,so.ok 表示只对so这个库中的ok表授权 |
root | 表示要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的 |
'%' | 表示允许远程连接的IP地址,%代表允许所有IP连接 只允许某个IP远程连接,可以写成'123.123.123.123' 只允许123.123.123.*这个网段远程连接,可以写成 '123.123.123.%' '123456' 是设置授权用户的连接密码 |
使用flush privileges立即刷新权限表,使添加的用户生效,完成后重启Mysql服务即可生效: |
# /etc/init.d/mysql restart
附录:
Mysql文件目录
-
数据库目录 /var/lib/mysql/
-
配置文件 /usr/share/mysql(mysql.server命令及配置文件)
-
相关命令 /usr/bin(mysqladmin mysqldump等命令)
-
启动脚本 /etc/rc.d/init.d/(启动脚本文件mysql的目录)
Mysql相关命令
- 启动
# /etc/init.d/mysql start
- 重启
# /etc/init.d/mysql restart
- 停止
# /etc/init.d/mysql stop
- 查看开机自启列表
# /sbin/chkconfig –list
- 将Mysql添加到开机自启列表
# /sbin/chkconfig – add mysql
- 将Mysql从开机自启列表中删除
# /sbin/chkconfig – del mysql