前言
最近比较喜欢折腾在自己的虚拟机中装了一个MySQL并且远程登录到服务器,话不多说直接开始
资源文件:MySQL-linux版本---链接:https://pan.baidu.com/s/1_YCsSChuUoSx9PFbVtivzQ提取码:8204
1.安装MySQL
我们需要先打开准备好的虚拟机
用xshell打开并且远程连接到centos再用FlashFxp工具从win10连接到centos上传已经下载好的linux版本的MySql安装包
1.2解压上传的文件(解压到和上传到的路径一样的路径 即是 /usr/local/解压后的文件夹名)Xshell上操作 tar -zxvf 压缩包名
1.3 为mysql设置用户组和添加用户 组添加命令 groupadd mysql -g mysql 即是把mysql用户添加到MySQL组中去,如果已经存在同名的情况则运行 userdel mysql 再 运行useradd mysql -g mysql
添加用户
1.4添加用户组和用户
#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -g mysql mysql
1.5、安装mysql
# pwd
/usr/local/mysql
[root@localhost mysql]# chown -R mysql:mysql * //更改文件的拥有者为mysql用户
#注意:这个版本中mysql_install_db 被废弃了,取而代之的是 mysqld
开始安装注意目录应该在 /usr/local/mysql/下
./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
#注意记住最后一行的 l8ue9vp,qAC> 这个是mysql初始登录root时的密码
将mysql/目录下除了data/目录的所有文件,改回root用户所有
chown -R root .
#mysql用户只需作为mysql/data/目录下所有文件的所有者
chown -R mysql data
4、文件配置
复制启动文件 [root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
# cp /usr/local/mysql/bin/my_print_defaults /usr/bin/
#修改启动脚本 把basedir=/usr/local/mysql/ 修改是为了找到下面的bin目录里面有mysqld命令来启动mysql
vi /etc/init.d/mysqld
#修改项:进入vi模式 按 A/i等进入编辑模式编辑完成操作:按住esc键--》同时按住shift+z按两次 保存修改
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
port=3306
启动服务并使用
[root@localhost mysql]# service mysqld start
#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
# vi /etc/profile
#添加mysql路径
export PATH=$PATH:/usr/local/mysql/bin
#刷新立即生效
# source /etc/profile
root@localhost bin]# mysql -uroot -p
Enter password: “ 这里数据上面的: l8ue9vp,qAC>
##登录成功
#然后设置root密码
先切换到自带的mysql数据库: use mysql;更改登录密码
mysql>SET PASSWORD = PASSWORD('root');
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
2.设置远程登录到mysql
2.1mysql未设置用户远程访问
解决(登录mysql执行):
默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限
登录mysql后输入如下命令:
grant all privileges on *.* to 'root' @'%' identified by 'root';
flush privileges;
或者通过SQL语句修改root用户的host为 ‘%’即任意的主机都允许登录
2.2端口防火墙未开放
解决(linux下执行):
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save ---将修改永久保存到防火墙中 建议先重启防火墙服务 service iptables restart
用远程工具连接成功!! 那个student表是自己创的