linux安装mysql

1.检测系统是否安装MYSQL
2.删除系统自带MYSQL及其依赖
3.给CentOS添加rpm源,并且选择较新的源
4.安装MYSQL服务器

  • 5.启动MYSQL
    6.查看MYSQL是否自启动,并且设置开启自启动
    7.查询MYSQL的初始密码
    8.登录数据库
    9.设置MYSQL允许远程访问
    1.允许所有IP访问mysql。
    2.让linux防火墙开放mysql的3306端口
    1.检测系统是否安装MYSQL
    yum list installed | grep mysql

2.删除系统自带MYSQL及其依赖
yum -y remove mysql-libs.x86_64

3.给CentOS添加rpm源,并且选择较新的源
若出现Is this ok [y/N]:的选项,输入y即可。

wget --no-check-certificate dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

yum localinstall mysql-community-release-el6-5.noarch.rpm

yum repolist all | grep mysql

yum-config-manager --disable mysql55-community

yum-config-manager --disable mysql56-community

yum-config-manager --enable mysql57-community-dmr

yum repolist enabled | grep mysql

4.安装MYSQL服务器
yum install mysql-community-server

  • 5.启动MYSQL
    service mysqld start

报如下错误:
Initializing MySQL database: [FAILED]
即 服务未跑成功。
报如下错误:
Initializing MySQL database: 2019-11-03T16:00:36.976760Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2019-11-03T16:00:36.978278Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting. 2019-11-03T16:00:36.978302Z 0 [ERROR] Aborting [FAILED]
即 因为data中存在数据。

解决方案:

删除mysql中的data:
rm -rf /var/lib/mysql/*

手动初始化:
mysqld --initialize --user=mysql

重新启动。
service mysqld start

原因:
第四步的: yum install mysql-community-server是安装数据库。
此时的/var/lib/mysql/* 内是有东西的,但没有用户信息,直接启动就会报初始化失败的错误。
手动初始化生成的/var/lib/mysql/*文件时带上了user参数,是包含用户mysql的。

6.查看MYSQL是否自启动,并且设置开启自启动
chkconfig --list | grep mysqld

chkconfig mysqld on

7.查询MYSQL的初始密码
grep ‘temporary password’ /var/log/mysqld.log

8.登录数据库
mysql -u root -p

若报错:
You must reset your password using ALTER USER statement before executing this statement.
则需 修改密码:

SET PASSWORD = PASSWORD(‘123456’);

若报错:
Your password does not satisfy the current policy requirements
则需重新设定密码规则:

设置安全级别
set global validate_password_policy=0;

默认密码长度为8,可以设置为其它值,最小4位
set global validate_password_length=4;

设置完成后 重新登录。

9.设置MYSQL允许远程访问
1.允许所有IP访问mysql。
mysql> use mysql;

mysql> update user set host = ‘%’ where user = ‘root’;

mysql>FLUSH PRIVILEGES;

mysql>exit;

2.让linux防火墙开放mysql的3306端口
打开防火墙配置文件
vi /etc/sysconfig/iptables

增加下面一行
-A INPUT -m state–state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

注意:增加的开放3306端口的语句一定要在icmp-host-prohibited之前。

重启防火墙
service iptables restart

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值