重装MySQL

#重装MySQL
1. 删除mysql
a. sudo apt-get autoremove --purge mysql-server-5.0
b. sudo apt-get remove mysql-server
c. sudo apt-get autoremove mysql-server
d. sudo apt-get remove mysql-common (非常重要)
此处我安装正常顺序不能正常卸载,后来我先执行了d之后再按正常顺序执行就OK了
2. 清理残留数据(此处是清理数据,会将所有数据库文清理,谨慎操作)
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
3. 安装 mysql
a. sudo apt-get install mysql-server
上述命令会安装以下包:
apparmor
mysql-client-5.7
mysql-common
mysql-server
mysql-server-5.7
mysql-server-core-5.7

因此无需再安装mysql-client等。安装过程会提示设置mysql root用户的密码,设置完成后等待自动安装即可。默认安装完成就启动了mysql。

  • 启动和关闭mysql服务器:
service mysql start
service mysql stop 

这里写图片描述

  • 确认是否启动成功:
sudo netstat -tap | grep mysql 

这里写图片描述

  • 进入mysql shell界面:
mysql -u root -p 

这里写图片描述

  • 解决利用sqoop导入MySQL中文乱码的问题
    导致导入时中文乱码的原因是character_set_server默认设置是latin1,如下图。
    这里写图片描述
    可以单个设置修改编码方式set character_set_server=utf8;但是重启会失效,建议按以下方式修改编码方式。
    (1)编辑配置文件。sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
    (2)在[mysqld]下添加一行character_set_server=utf8。如下图
    这里写图片描述
    (3)重启MySQL服务。service mysql restart
    (4)登陆MySQL,并查看MySQL目前设置的编码show variables like "char%";
    这里写图片描述
    这样就可以愉快的导入中文了!

下面回顾一下安装过程中我遇到的问题
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),然后又是找了很多国内外资料,国内百度无法搜索出和这个错误完全相关的,还是老实FQ上谷歌,提出的方案是需要删除一些重复的配置文件,但是我连这个/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 顺利安装成功!

配置远程访问

a、编辑配置文件

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf  将bind-address = 127.0.0.1注释

b、修改用户权限

登录MySQL:mysql -u root -p --远程访问 mysql -h 192.168.0.201 -P 3306 -u root -p123 123为root用户密码

用户权限:grant all on *.* to root@'%' identified by '1';  --添加一个用户名是root且密码是1的远程访问用户

刷新:flush privileges;

查看是否添加成功:select user,host,authentication_string from user; --在5.7中用户密码是列authentication_string

退出:quit

c、重启MySQL服务

/etc/init.d/mysql restart

3、完成且测试通过。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值