知识点:CentOS 7.2二进制安装mysql-5.7.19 MySQL官方文档地址 官方文档地址:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
开始安装
1、下载mysql二进制包
# cd /usr/local/src
# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
2、下载mysql依赖的libaio 库
# yum search libaio
# yum install libaio
3、创建组和用户(如果失败,继续下一步)
# groupadd mysql
# useradd -r -g mysql -s /bin/false mysql
4、解压
# tar xf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
# mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/mysql-5.7.19
# ln -s /usr/local/mysql-5.7.19/ /usr/local/mysql
5、配置环境变量
# export PATH=$PATH:/usr/local/mysql/bin
# echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile
# source /etc/profile
6、配置
# cd /usr/local/mysql
# mkdir mysql-files
# chown -R mysql.mysql mysql-files/
# chmod 750 mysql-files/
# ./bin/mysqld --initialize --user=mysql
# ./bin/mysql_ssl_rsa_setup
7、创建必要目录
# mkdir /var/log/mariadb/
# touch /var/log/mariadb/mariadb.log
# chown -R mysql.mysql /var/log/mariadb/mariadb.log
# mkdir /var/run/mariadb/ -p
# touch /var/run/mariadb/mariadb.pid
# chown -R mysql.mysql /var/run/mariadb/
8、配置mysql启动脚本
# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
9、启动mysql
# /etc/init.d/mysqld start
进入mysql并设置密码
1、在配置文件添加跳过授权表配置
[root@root ~]# head /etc/my.cnf
[mysqld]
skip-grant-tables #在my.cnf配置键的[mysqld]下添加skip-grant-tables
2、重启mysql
/etc/init.d/mysqld restart
3、进入mysql
mysql -S/var/lib/mysql/mysql.sock
4、进入后修改mysql密码
update mysql.user set authentication_string=password('新密码') where user='root' and Host = 'localhost';
5、退出mysql后,去掉/etc/my.cnf刚填加的跳过授权表配置
[root@root ~]# vim /etc/my.cnf
[mysqld]
#skip-grant-tables #删除或者用#号注释都可以
6、再次进入mysql
mysql -uroot -p新密码 -S/var/lib/mysql/mysql.sock
7、查看数据库
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
#查看数据库时报错
8、解决报错
mysql> set password for 'root'@'localhost'=password('新密码');
#新密码和前面设置的新密码要一致
9、此时在查看数据库
复制代码
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
发现已经可以正常访问了!!!
远程连接Linux服务器mysql,2003错误 cant connect to mysql
登录阿里云控制台点击“云服务器”进入实例列表,选择列表中你想要连接的MySQL所在的服务器实例,点击“更多”,选择:网络和安全组-->安全组配置,进入安全组列表,点击“配置规则”,再添加安全组规则,参数如下:
允许 自定义 TCP 3306/3306 IPv4地址段访问 0.0.0.0/0 mysql远程连接 1 2019年7月28日 00:56 ||
允许 自定义 TCP 80/80 IPv4地址段访问 0.0.0.0/0 nginx 1 2019年7月2日 19:03 ||
允许 自定义 TCP 8080/9090 IPv4地址段访问 0.0.0.0/0 tomcat 1 2019年7月2日 18:11 ||
补充 远程访问阿里云数据库服务器RDS
RDS数据安全性 --> 设置白名单,格式如下:
0.0.0.0,
111.196.240.157,
111.196.242.147,
111.196.243.70,
172.17.89.112,
192.168.1.1/32,
219.142.47.114,
219.142.47.115,
219.142.47.116,
219.142.47.117,
219.142.47.118,
39.106.177.119
如果你仍被拒绝访问,获取当前所在城市IP添加到白名单中即可。
Access denied for user 'root'@'219.142.47.114' (using password: YES)
分析:
IP地址: 219.142.47.117北京市北京市 电信,并非我服务器IP,之前讲设置白名单中说过。而我服务器IP是39.*.*.119,
说明了这不是密码错误造成的。了解RDS产品的同学想必都知道,需要设置白名单,目录是不被拦截,ECS亦是如此,更何况是MySQL。
因此,只有一可能,那就是没有授权其他主机连接你的这台服务器,换句话说,其它主机连接这台服务器时都将被拦截。
注:建议在授权之前先创建好快照,避免修改失误
参考:
https://help.aliyun.com/document_detail/25455.html?spm=5176.11065259.1996646101.searchclickresult.f15a506fyqlFnS
解决办法:授权
mysql -uroot -p
grant all privileges on *.* to root@'%' identified by '123456' with grant option;
flush privileges;
注意:本文归作者所有,未经作者允许,不得转载