centos下载安装mysql,并设置远程访问
思路
获取安装文件→配置好路径→安装→设置权限→处理常见的问题。
1.下载
先建议去官网看看https://dev.mysql.com/,然后根据自己的常识找到下载路径。同时也找到最新版本。
下载方式有两种
a.系统下载wget+下载链接。
b.外部下载然后拷贝进去。
如果是玩虚机学习的,建议采用第二种方式。
2.配置好路径
路径有两个,第一个是安装路径,第二个是配置路径。
a.安装路径
程序要运行,都需要有对应的路径,也就是程序的位置。linux的路径也很复杂,如果采用yum安装好像什么问题都给你解决了,而采用自己安装的方式,那只能自己配置了。
建议将安装文件夹存放在 /usr/local/。
b.配置路径
程序运行需要的一些配置参数,比如数据库的存放位置,某些文件的路径。
1 //解压 2 tar -zxvf mysql-5.6.43-linux-glibc2.5-x86_64.tar.gz 3 //复制解压后的mysql目录 4 cp -r mysql-5.6.43-linux-glibc2.5-x86_64 /usr/local/mysql
3、添加用户组和用户
为啥要有这一步呢,因为涉及到后面的权限等问题。
//添加用户组 groupadd mysql_group //添加用户mysql 到用户组mysql useradd -g mysql mysql_group
4、安装
1 //进入mysql的目录 2 cd /usr/local/mysql/ 3 //创建数据库地址目录 4 mkdir ./data/mysql 5 //设置权限 6 chown -R mysql:mysql_group ./ 7 //安装(设置路径) 8 ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql 9 //复制服务启动文件 10 cp support-files/mysql.server /etc/init.d/mysqld 11 12 //设置权限 13 //1.文件所有者可读可写可执行 14 //2.与文件所有者同属一个用户组的其他用户可读可执行 15 //3.其它用户组可读可执行 16 chmod 755 /etc/init.d/mysqld 17 18 //复制配置文件 19 cp support-files/my-default.cnf /etc/my.cnf 20 21 //修改程序启动脚本 22 vi /etc/init.d/mysqld 23 24 //修改项: 25 basedir=/usr/local/mysql/ 26 datadir=/usr/local/mysql/data/mysql 27 28 //加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了 29 export PATH=$PATH:/usr/local/mysql 30 source /etc/profile 31 32 //启动服务 33 service mysqld start 34 35 //测试连接 36 ./mysql/bin/mysql -uroot
5、用户权限密码设置
连接成功,最后马上设置好密码和相关权限,否则后续容易引发其他问题。
1 //选择用户数据库 2 mysql> use mysql; 3 4 //查询用户信息 5 mysql> select host,user,password from user; 6 7 //设置远程权限 8 mysql> grant all privileges on *.* to root@'%' identified by "Root123456"; 9 10 /* 11 Root123456:是密码,可根据情况修改。 12 */ 13 14 15 #生效新加用户权限 16 mysql> flush privileges; 17 18 //查询用户信息 19 mysql> select host,user,password from user; 20 21 /* 22 host列表示允许访问的IP 23 设置好远程权限后会有一条host='%'的记录,代表所有IP均可访问。 24 */
5、错误
5.1 sqlyog连接时,报1130错误,是由于没有给远程连接的用户权限问题
解决1:更改 ‘mysql’数据库‘user’表‘host’项,从‘localhost’改成‘%’。
use mysql; select 'host' from user where user='root'; update user set host = '%' where user ='root'; flush privileges;
解决2:直接授权
GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
5.2 安装时的一些错误
-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 没有那个文件或目录
解决: yum -y install perl perl-devel
Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决:yum -y install libaio-devel
6、其他
6.1 配置环境变量
vi + /etc/profile
export PATH=....:/usr/local/mysql/bin