前提
我这里用的是linux CentOS 7.3 版本的 内核 3.10.0-514.26.2.el7.x86_64
[root@iZ2zefzbxlqr5ozywhfznuZ /]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
示例安装的是 mysql-5.7.27的版本,当然以下教程同样适用于Ubuntu
下载
在安装mysql之前,我们需要将系统自带的mariadb-lib卸载
[root@iZ2zefzbxlqr5ozywhfznuZ /]# rpm -qa|grep mariadb
mariadb-libs-5.5.52-1.el7.x86_64
[root@iZ2zefzbxlqr5ozywhfznuZ /]# sudo rpm -e mariadb-libs-5.5.52-1.el7.x86_64 --nodeps
这里先将 mariadb-lib 查出来 ,然后 sudo rpm -e 删掉它
在mysql的官网上选择你需要的版本进行下载
我这里选用的是mysql-5.7.27
wget https://qcloud-1256166828.cos.ap-shanghai.myqcloud.com/mysql/5.7/mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar
将下载的文件解压到 /usr/local/mysql/
mkdir /usr/local/mysql
tar -xvf mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql/
cd /usr/local/mysql/
安装
解压后 通过命令rpm -ivh (下载的安装包名),安装mysql
按照以下顺序进行安装,因为它们之间存在依赖关系
common --> libs --> client --> server
先安装依赖包(注意CentOS是用的yum,Ubuntu用的是apt):
yum -y install libaio-devel.x86_64;
rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm --force --nodeps
初始化并启动mysql
sudo mysqld --initialize 该命令会在/var/log/mysqld.log生成随机密码
进入mysqld.log ,一般在最下方会显示出生成的随机密码
vi /var/log/mysqld.log
[Note] A temporary password is generated for root@localhost: fu9gnjQr-2xV
修改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库
sudo chown mysql:mysql /var/lib/mysql -R
systemctl start mysqld.service
配置mysql
至此安装完成 我们尝试登陆mysql
mysql -u root -p
输入上面产生的随机密码
登陆成功后我们根据需要修改mysql的密码,不然无法做其他操作.
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user user() identified by "123456";
Query OK, 0 rows affected (0.00 sec)
这时候重新输入 show databases; 检查是否可以使用.
此时的mysql 端口默认为 3306 如若需要修改 请自行在 my.ini 中添加或修改
navicat远程连接
获取授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '输入需要设置的密码' WITH GRANT OPTION;
刷新权限
FLUSH PRIVILEGES;