ubuntu16.04安装配置mysql数据库

时间:2021-09-06 03:44:15

参考http://wiki.ubuntu.org.cn/MySQL%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97

版本为5.7

一、安装

安装命令sudo apt-get install mysql-server

但是由于存在旧版本或者卸载不干净,可能报错如下

ubuntu16.04安装配置mysql数据库

参考https://www.linuxidc.com/Linux/2018-04/151989.htm

更新系统

sudo apt-get update

然后,修复安装错误,会提示输入mysql用户名密码

sudo apt-get --fix-broken install

之后再执行安装命令,应该可以了。

在安装过程中会要求输入密码。

二、配置

通过 mysql -u root -p 以root身份登录到数据库

通过 mysql> CREATE DATABASE rdshare; 创建数据库。

 

创建用户并赋予权限。

mysql>GRANT ALL PRIVILEGES ON rdshare.* TO yanjieliu@localhost IDENTIFIED BY "654321";

这样就建立了一个yanjieliu的用户,它对数据库rdshare有着全部权限。以后就用yanjieliu来对rdshare数据库进行管理,而无需要再用root用户了,而该用户的权限也只被限定在rdshare数据库中。用户密码为654321

 

三、设置远程登录

参考:https://zhuanlan.zhihu.com/p/45166462

重启很重要,一定要重启

.打开mysql配置文件

# 注意:不同 mysql 版本此配置文件位置和名字可能不同
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf # mysql 5.7.23
#找到将bind-address = 127.0.0.1注销​
#bind-address            = 127.0.0.1

5.修改后,重启MySQL服务器

sudo /etc/init.d/mysql restart

6.重新登录mysql

mysql -uroot -p
## mysql>命令 begin
grant all privileges on *.* to 'root'@'%' identified by 'xxxxxx';
flush privileges;
## end
exit
  1. 第一个*是数据库,可以改成允许访问的数据库名称
  2. 第二个* 是数据库的表名称,*代表允许访问任意的表
  3. root代表远程登录使用的用户名,可以自定义
  4. %代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了
  5. password代表远程登录时使用的密码,可以自定义

7.检查MySQL服务器占用端口

netstat -nlt|grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN

我们看到从之间的网络监听从 127.0.0.1:3306 变成 0 0.0.0.0:3306,表示MySQL已经允许远程登陆访问。

 

.修改后,重启MySQL服务器,并登录

sudo /etc/init.d/mysql restart
mysql -uroot -p 
mysql> SHOW VARIABLES LIKE ‘character%’;
#能够看到默认字符集已经变为utf8
exit

10.在本地远程连接

mysql -h 服务器ip地址 -P 3306 -u root -p

然后输入密码即可。

root是第6步数设置的用户名,密码也是第1点设置的密码

大功告成!