Centos7安装
https://juejin.cn/post/6844903870053761037#heading-28
https://blog.csdn.net/GX_1_11_real/article/details/95052475
-- 查看系统中是否已经安装MySQL. 返回空值,说明没有安装.
$ rpm -qa|grep mysql
-- 删除可用的MySQL
$ yum remove mysql
-- 下载可用的MySQL
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
-- 安装mysql-community-release-el7-5.noarch.rpm包
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
-- 安装MySQL
$ sudo yum install mysql-server
-- 再次查看系统中是否已经安装MySQL.返回结果如下
$ rpm -qa|grep mysql
mysql-community-common-5.6.51-2.el7.x86_64
mysql-community-libs-5.6.51-2.el7.x86_64
mysql-community-release-el7-5.noarch
mysql-community-client-5.6.51-2.el7.x86_64
mysql-community-server-5.6.51-2.el7.x86_64
-- 重置root账户的密码--
$ mysql -u root -p
-- 登录时有可能报这样的错:ERROR 2002 (HY000): Can’t connect to local MySQL server
-- through socket ‘/var/lib/mysql/mysql.sock’ (2),
-- 原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户
$ sudo chown -R openscanner:openscanner /var/lib/mysql
-- 如果报chown: 无效的用户: "openscanner:openscanner"错误,更换命令,
-- 并用 ll 查看目录权限列表
$ chown root /var/lib/mysql/
$ ll
--登录重置密码--
$ mysql -u root -p
-- 进入mysql数据库
mysql> use mysql;
-- 设置root用户的密码为123456
mysql> update user set password=password('123456') where user='root';
-- 为root添加远程连接的能力,链接密码为123456
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
mysql> exit;
-- 重启MySQL服务
$ service mysqld restart
--开放3306端口--
-- 显示防火墙状态: 结果为running或not running
$ firewall-cmd --state
# 关闭防火墙
$ systemctl stop firewalld.service
$ systemctl disable firewalld.service
# 开启防火墙
$ systemctl start firewalld.service
-- 开启3306端口. zone: 作用域 add-port=80/tcp: 添加端口,格式为: 端口/通讯协议
-- permanent: 永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=3306/tcp --permanent
-- 重启防火墙
$ firewall-cmd --reload
Ubuntu安装MySQL
参考资料:https://blog.csdn.net/weixin_38924500/article/details/106261971
- ubuntu18.04 首次登录mysql未设置密码或忘记密码解决方法
-- 找到安装时默认生成的默认账户
sudo cat /etc/mysql/debian.cnf
-- 用得到的账户和密码登录mysql
mysql -u debian-sys-maint -p
-- 连接到mysql数据库, MySQL8.0以前用下面的修改密码
use mysql;
update mysql.user \
set authentication_string=password('123456') \
where user='root' and Host ='localhost'; \
update user set plugin="mysql_native_password";
-- MySQL8.0修改密码用下述命令 --
-- ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
flush privileges;
quit;
-- 执行完上述命令后, 再重启mysql服务器,就直接用root账户进行登录了
- 解决mysql启动服务过程中一直提示输密码。
原因是mysql安装时自动建立的linux user,运行passwd -d mysql
后解决。
- 执行 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
4. 常用MySQL命令
```sql
启动mysql:
sudo /etc/init.d/mysql start -- 方式一
sudo service mysql start -- 方式二
停止mysql:
sudo /etc/init.d/mysql stop -- 方式一
sudo service mysql stop -- 方式二
重启mysql:
sudo/etc/init.d/mysql restart -- 方式一
sudo service mysql restart -- 方式二