linux本地安装mysql
简单的模块,但都是后面配置应用的基础,索性都记录下来也方便自己复习
这次就在centos01,centos02,centos03分别安装上mysql 作为pro,bate,dev 即线上,测试,开发环境
1. 首先进入本机的源文件目录
cd /usr/local/src
2.使用wget下载官方yum源的rpm包:
(当前环境centos01)
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
(wget: command not found --解决: yum install -y wget)
这里可以通过scp 发送到其他两台 –
scp /usr/local/src/mysql57-community-release-el7-11.noarch.rpm centos02:/usr/local/src
scp /usr/local/src/mysql57-community-release-el7-11.noarch.rpm centos03:/usr/local/src
3. 安装rpm包:
rpm -ivh mysql57-community-release-el7-11.noarch.rpm
4. 再次使用yum来安装mysql-server:
yum install -y mysql-server
(这里可能有点久)
可以看到这次不再提示安装Mariadb了
5. 安装完成后,启动mysqld服务:
systemctl start mysqld
查看是否成功启动:
ps aux|grep mysqld
6. 设置mysqld服务开机自启动:(ps:我安装完重启就直接会启动 好像是可以不用设置开机启动的)
systemctl enable mysqld
7. 使用初始密码登录
由于MySQL从5.7开始不允许首次安装后,使用空密码进行登录,系统会随机生成一个密码以供管理员首次登录使用,这个密码记录在/var/log/mysqld.log文件中,使用下面的命令可以查看此密码:
cat /var/log/mysqld.log|grep ‘A temporary password’
2017-11-12T13:35:37.013617Z 1 [Note] A temporary password is generated for root@localhost: bkv,dy,)o7Ss
最后一行冒号后面的部分bkv,dy,)o7Ss就是初始密码。
使用此密码登录MySQL:
mysql -u root -p
8.8. 更改默认密码:
切换数据库:
use mysql;
( 这里会报下面这个错误:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
暂时忽略这个错误 就当做操作记录
)
有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。
必须修改两个全局参数:
首先,修改validate_password_policy参数的值
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
修改root密码:root 为 root 的新密码
alter user ‘root’@‘localhost’ identified by ‘root’;
断开重新连接
重新使用新的密码登录,如果可以正常登录说明你的MySQL已经成功安装在CentOS上了,当然use mysql;也不会报错了
9.配置远程连接
默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限
登录mysql后输入如下命令:
grant all privileges on . to ‘root’ @’%’ identified by ‘root’;
flush privileges;
'all privileges ':所有权限 也可以写成 select ,update等。
. 所有库的所有表 如 databasename.*。
IP 数据库所在的IP。
identified by ‘密码’ 表示通过密码连接
2.端口防火墙未开放(centos7)
// --permanent 永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新载入
firewall-cmd --reload