ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

【安装】Ubuntu之MySQL

2020-06-28 17:51:35  阅读:253  来源: 互联网

标签:sudo root Ubuntu mysqld mysql MySQL deb 安装 ubuntu


工欲善其事,必先利其器。

Ubuntu18.04安装MySQL

1. 命令安装

sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
  • 安装成功后可以通过下面的命令测试是否安装成功:
sudo netstat -tap | grep mysql

出现了错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'问题

  • 依次执行一下命令:
sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/
sudo service mysql restart
  • 解决msyql需要超级用户登录的问题

/etc/mysql/mysql.conf.d/mysqld.cnf添加点内容,service mysql restart,重新启动mysql

[mysqld]
skip-grant-tables

2. tar安装

  • 下载地址
https://dev.mysql.com/downloads/mysql/
  • 解压
mkdir mysql
tar -xvf mysql-server_5.7.30-1ubuntu18.04_amd64.deb-bundle.tar -C /opt/mysql
sudo dpkg -i libaio1_0.3.110-2_amd64.deb
sudo dpkg-preconfigure mysql-community-server_*.deb # 这一步需要设置密码
sudo dpkg -i mysql-common_*.deb
sudo dpkg -i mysql-community-client_*.deb
sudo dpkg -i mysql-client_*.deb
sudo dpkg -i libmecab2_0.996-1.2ubuntu1_amd64.deb # 依赖安装,之后才是server安装
sudo dpkg -i mysql-community-server_*.deb

远程访问

1.试一试能否远程访问

  • -P:端口(默认3306)
  • -h:ip地址
  • -u:用户名
  • p:密码
mysql -uroot -proot -h 172.17.0.1 -P 12345

默认仅支持本地访问

2.登录数据库

mysql -uroot -p{密码}

3.切换到mysql数据库

use mysql

4.查看数据库当前访问权限信息

mysql> select User,Host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| User          | Host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)

5.设置访问权限

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
  • *.*:代表所有资源所有权限
  • 'root'@'%':其中root代表账户名,%代表所有的访问地址,也可以使用一个唯一的地址进行替换,只有一个地址能够访问。如果是某个网段的可以使用地址与%结合的方式,如10.0.42.%。
  • IDENTIFIED BY 'root':这个root是指访问密码。
  • WITH GRANT OPTION允许级联授权。

6.刷新访问权限表

FLUSH PRIVILEGES;

7.重新查看用户表

mysql> select User,Host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| User          | Host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| root          | %         | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)

8. 重启mysql服务

service mysql restart

9. 查看防火墙是否关闭

service iptables status

10. 关闭防火墙

service iptables stop

11. 注释配置文件

cd /etc/mysql/mysql.conf.d
sudo vim mysqld.cnf

# 注释bind-address = 127.0.0.1

操作完成之后即可远程登录。

参考地址:https://www.jianshu.com/p/478dc7c9b9e0

标签:sudo,root,Ubuntu,mysqld,mysql,MySQL,deb,安装,ubuntu
来源: https://www.cnblogs.com/ydongy/p/13204246.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有