ubuntu16.o4重启mysql_ubuntu16.0.4安装mysql

ubuntu16.0.4安装mysql

apt-get update;

apt-get upgrade;

apt-get install mysql-server;

这个版本目前默认安装mysql5.7

修改字符集:

vim /etc/my.ini

default-character-set=utf8

lower_case_table_names = 0

其中 0:区分大小写,1:不区分大小写

启动:

select user,host from mysql.user;

删除匿名用户:

delete from mysql.user where user=’’;

刷新权限:

flush privileges;

开放3306端口:

iptabels -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

也可以使用:

ufw allow 3306

ufw allow mysql ;

建立用户:

insert into mysql.user(Host,User,Password) values(“localhost”,”yk”,password(”19851014”));

create database mmal default character set utf8 collate utf8_general_ci;

查看权限:

select * from mysql.user \G;

赋予权限:

grant all privileges on mall.* to yk@’%’ identified by ‘mall’ with grant option;

set password for root@localhost=password(‘root’);

set password for root@127.0.0.1=password(‘root’);

问题一:安装过程中遇到的问题。

每次在linux安装成功软件,都习惯把软件卸载了,在重新安装,结果就出现了下面的问题,方法是网上找的,网址忘了,给原创道个歉。

如果安装不成功:

1、安装到Renaming removed key_buffer and myisam-recover options (if present)就卡住了,而且ctrl+C 也无法退出,最后我关闭了终端强制退出了,但是我发现运用sudo netstat -tap | grep mysql 居然显示是启动成功的,可是进入shell界面就会出现问题,提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:YES)网上找了一堆方法,都无法解决。

无奈考虑卸载重装:

sudo apt-get autoremove mysql* --purge

sudo apt-get remove apparmor //这个apparmor是在装mysql-server时装上的,和安全有关

2、重启电脑后(很多时候重启是法宝),再次利用命令apt-get安装mysql-server,运行到Renaming removed key_buffer and myisam-recover options (if present)仍然卡住了,我再次中止了终端,发现启动也是成功的,尝试进入shell界面,出现另一种新的错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2),然后又是找了很多国内外资料,国内百度无法搜索出和这个错误完全相关的,还是老实×××上谷歌,提出的方案是需要删除一些重复的配置文件,但是我连这个/var/run/mysqld/mysqld.sock没有,因此仍然无法解决。

再次卸载。考虑一定要卸载非常彻底。

sudo apt-get autoremove mysql* --purge

sudo apt-get remove apparmor

sudo rm /var/lib/mysql/ -R //非常重要

sudo rm /etc/mysql/ -R //非常重要

3、重启电脑,再次利用命令sudo apt-get install mysql-server 顺利安装成功!

问题二:远程登陆mysql服务登陆不不了:

检查服务启动没有:

ps aux | grep mysql

检查端口监听:

netstat -antp | grep 3306

如果监听显示只有127.0.0.1:3306:首先修改配置文件,mysql5.7配置文件在

/etc/mysql/mysql.conf.d/my.cnf

将bind-address=127.0.0.1修改为bind-address=0.0.0.0

如果还是远程访问不了:查看给相应的用户赋予远程访问或指定ip访问的权限没有。

select host,user from mysql.user;

赋予相应用户权限:

update user set host=’%’ where user = ‘root’;

‘%’是指任何ip地址都可以访问。

flush privileges;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值