Centos7安装

https://juejin.cn/post/6844903870053761037#heading-28
https://blog.csdn.net/GX_1_11_real/article/details/95052475

  1. -- 查看系统中是否已经安装MySQL. 返回空值,说明没有安装.
  2. $ rpm -qa|grep mysql
  3. -- 删除可用的MySQL
  4. $ yum remove mysql
  5. -- 下载可用的MySQL
  6. $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
  7. -- 安装mysql-community-release-el7-5.noarch.rpm
  8. $ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
  9. -- 安装MySQL
  10. $ sudo yum install mysql-server
  11. -- 再次查看系统中是否已经安装MySQL.返回结果如下
  12. $ rpm -qa|grep mysql
  13. mysql-community-common-5.6.51-2.el7.x86_64
  14. mysql-community-libs-5.6.51-2.el7.x86_64
  15. mysql-community-release-el7-5.noarch
  16. mysql-community-client-5.6.51-2.el7.x86_64
  17. mysql-community-server-5.6.51-2.el7.x86_64
  18. -- 重置root账户的密码--
  19. $ mysql -u root -p
  20. -- 登录时有可能报这样的错:ERROR 2002 (HY000): Cant connect to local MySQL server
  21. -- through socket ‘/var/lib/mysql/mysql.sock (2),
  22. -- 原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户
  23. $ sudo chown -R openscanner:openscanner /var/lib/mysql
  24. -- 如果报chown: 无效的用户: "openscanner:openscanner"错误,更换命令,
  25. -- 并用 ll 查看目录权限列表
  26. $ chown root /var/lib/mysql/
  27. $ ll
  28. --登录重置密码--
  29. $ mysql -u root -p
  30. -- 进入mysql数据库
  31. mysql> use mysql;
  32. -- 设置root用户的密码为123456
  33. mysql> update user set password=password('123456') where user='root';
  34. -- root添加远程连接的能力,链接密码为123456
  35. mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
  36. mysql> exit;
  37. -- 重启MySQL服务
  38. $ service mysqld restart
  39. --开放3306端口--
  40. -- 显示防火墙状态: 结果为runningnot running
  41. $ firewall-cmd --state
  42. # 关闭防火墙
  43. $ systemctl stop firewalld.service
  44. $ systemctl disable firewalld.service
  45. # 开启防火墙
  46. $ systemctl start firewalld.service
  47. -- 开启3306端口. zone: 作用域 add-port=80/tcp: 添加端口,格式为: 端口/通讯协议
  48. -- permanent: 永久生效,没有此参数重启后失效
  49. firewall-cmd --zone=public --add-port=3306/tcp --permanent
  50. -- 重启防火墙
  51. $ firewall-cmd --reload

Ubuntu安装MySQL

参考资料:https://blog.csdn.net/weixin_38924500/article/details/106261971

  1. ubuntu18.04 首次登录mysql未设置密码或忘记密码解决方法
    1. -- 找到安装时默认生成的默认账户
    2. sudo cat /etc/mysql/debian.cnf
    image.png
    1. -- 用得到的账户和密码登录mysql
    2. mysql -u debian-sys-maint -p
    3. -- 连接到mysql数据库, MySQL8.0以前用下面的修改密码
    4. use mysql;
    5. update mysql.user \
    6. set authentication_string=password('123456') \
    7. where user='root' and Host ='localhost'; \
    8. update user set plugin="mysql_native_password";
    9. -- MySQL8.0修改密码用下述命令 --
    10. -- ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
    11. flush privileges;
    12. quit;
    13. -- 执行完上述命令后, 再重启mysql服务器,就直接用root账户进行登录了
  1. 解决mysql启动服务过程中一直提示输密码。

原因是mysql安装时自动建立的linux user,运行passwd -d mysql后解决。

  1. 执行 service mysql restart时mysql 启动失败报错 ```sql —执行 service mysql restart时mysql 启动失败报错: su: using restricted shell /bin/false su: warning: cannot change directory to /nonexistent: No such file or directory

—这种错误一般是 mysql 服务器异常关机导致的,解决方案如下: — Ubuntu平台 sudo service mysql stop sudo usermod -d /var/lib/mysql/ mysql sudo service mysql start

— CentOS平台 sudo systemctl stop mysql.service sudo usermod -d /var/lib/mysql/ mysql sudo systemctl start mysql.service

  1. 4. 常用MySQL命令
  2. ```sql
  3. 启动mysql:
  4. sudo /etc/init.d/mysql start -- 方式一
  5. sudo service mysql start -- 方式二
  6. 停止mysql:
  7. sudo /etc/init.d/mysql stop -- 方式一
  8. sudo service mysql stop -- 方式二
  9. 重启mysql:
  10. sudo/etc/init.d/mysql restart -- 方式一
  11. sudo service mysql restart -- 方式二