一、查看与安装:
whereis mysql
rpm –qa|grep mysql”查看安装了哪些MySQL的rpm包
#mysql-community-release-el6-5.noarch
#mysql-community-common-5.6.26-2.el6.i686
yum remove mysql-community-release-el6-5.noarch mysql-community-common-5.6.26-2.el6.i686 删除安装包
MySQL创建的数据库一般位于“/var/lib/mysql”目录下,将“/var/lib/mysq”目录删除即可,否则在安装新的MySQL的时候,它发现已经有数据库了,就不会创建新的数据库了
MySQL的安装方式有两种,一种是用yum安装,yum会自动联网下载rpm包进行安装;一种是用rpm命令安装,需要自己手动下载MySQL的rmp安装包。
首先到oracle官网下载“mysql-community-release-el6-5.noarch.rpm”,该文件很小,是MySQL的yum源包,里面只是记录了MySQL的yum地址。
将下载的源“mysql-community-release-el6-5.noarch.rpm”上传到linux服务器,使用yum命令安装此源:
yum localinstall mysql-community-release-el6-5.noarch.rpm
yum install mysql-server #安装mysql
service mysqld status #查看mysql状态
service mysqld start #启动mysql服务
/usr/bin/mysqladmin -u root password 'xxxx' #为root用户设置密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; #不允许远程连接mysql数据库服务器!需要授权才能访问
*rpm安装时就要先下载安装包,然后直接安装:rpm -ivh mysql-community-*
二、字符编码问题
show variables like '%char%'; 未修改编码之前,查看字符集设置如下:
vi /etc/my.cnf 修改mysql的默认字符集
character_set_database=utf8
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
[client] 新增[client]标签
default-character-set=utf8 新增此配置
[mysqld]
default-storage-engine=INNODB 新增此配置
character-set-server=utf8 新增此配置
collation-server=utf8_general_ci 新增此配置
修改配置后重启mysql
三、大小写字母问题
在windows下,mysql不区分大小写,而在linux下,mysql是严格区分大小写的。
vi /etc/my.cnf
[client]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1 增加此项配置
摘引:https://www.cnblogs.com/jun1019/p/6359067.html
四、如果是安装的mysql8.0版本
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。这时需要自己修改为自定义密码
先用临时密码登录,然后修改密码:mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test@2019'; 注意:名字必须有大写字母,数字和特殊符号
Mysql默认不允许远程登录,所以需要开启远程访问权限,可以先查看user表,默认的host都是localhost
select user,authentication_string,host from user;
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
五、远程连接问题
MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。在MySQL 8.04前,执行:SET PASSWORD=PASSWORD('[新密码]');但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。
将 MySQL 用户登录的加密规则修改为 mysql_native_password
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '自己的新密码';
FLUSH PRIVILEGES;
六、其它问题
在安装python时,一般教程都会提示说,安装成功后,yum不能用,需要修改yum配置文件(vim /usr/bin/yum)。 把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7
那么这个方法,继续可以在这个问题上使用:
第一步,vim /usr/bin/firewall-cmd, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es(到目前为止,上面提到的问题已解决)
第二步,vim /usr/sbin/firewalld, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2.7 -Es (这一步是针对于防火墙报错,进行的修改)
***********************************************************************************************************************************************************************
centos7中mysql5.7的安装:
1、
yum install -y zlib-dev openssl openssl-devel sqlite-devel bzip2-devel gcc mysql-devel pcre-devel xml2 libxml2-devel libxslt libxslt-devel python-pyasn1 libffi-devel python-pyasn1-modules
2、查看当前系统是否有安装:rpm -qa | grep mysql
3、wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm #下载mysql的安装源包
4、yum install -y mysql-community-server #安装mysql
5、mysql -V #查看是否安装成功
6、systemctl start mysqld #启动服务
7、systemctl enable mysqld #设置开机启动
8、grep 'temporary password' /var/log/mysqld.log #查看是否自动生成随机数据库root账号密码,如果有,这时使用连接上后,show databases; 会提示要修改密码。
9、set password=password(‘your new root password'); #设置新密码
10、grant all privileges on *.* to root@'%' identified by 'your new root password'; #授权可以远程访问
11、flush privileges; #刷新权限
###mysql的升级###
1、service mysqld stop
2、下载rpm最新包:rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
3、安装yum install mysql-community-server
###mysql忘记密码###
1、修改mysql的配置文件/etc/my.cnf,在mysqld的节点下添加:skip-grant-tables
3、重启mysql服务:systemctl restart mysqld.service
4、mysql -uroot -p 无密码直接登录,然后在mysql数据库下修改user表中的root密码
5、把my.cnf中的修改项注释掉
6、重启mysql服务,用新root密码登录