下载MySQL-5.6.43
MySQL-5.6.43安装
数据库安装最好是安装在 usr/local/ 里面,因为默认的很多东西都是指向这个文件夹中的。
上传到Linux服务器
使用Xshell将下载的mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz,上传到Linux服务器的/usr/local/localsoftware/software目录
解包并移动到目录/usr/local/
tar -zxvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.43-linux-glibc2.12-x86_64 mysql
mv mysql /usr/local/
创建mysql用户组和mysql用户
groupadd mysql
useradd -r -g mysql mysql
创建存放mysql数据的目录
cd /usr/local/mysql/data
mkdir mysql
更改mysql数据目录拥有者
chown -R mysql:mysql mysql
安装perl
yum -y install perl perl-devel autoconf
数据库初始化
/usr/local/mysql/scripts
./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
拷贝 my-default.cnf到/etc/my.cnf
cd ../support-files/
cp my-default.cnf /etc/my.cnf
向/etc/init.d中添加mysql的启动服务
init.d目录包含许多系统各种服务的启动和停止脚本。
/usr/local/mysql/support-files
cp mysql.server /etc/init.d/mysqld
修改/etc/init.d/mysqld权限
chmod 755 ./mysqld
修改/etc/init.d/mysqld
vi /etc/init.d/mysqld
配置环境变量
将MySQL配置到环境变量中,这样就可以在任何地方用mysql命令了
vi /etc/profile
执行如下指令,使上述配置立即生效
source /etc/profile
启动MySQL
service mysqld start
cd /usr/local/mysql/data
查看err的信息
修改/etc/my.cnf
vi /etc/my.cnf
添加federated
此时再次启动,还是存在问题,如下图
此时查看linux-cb-01.err,提示已经存在/tmp/mysql.sock,这是因为本Linux服务器以前安装过MySQL。
将这个文件删掉,再次尝试启动MySQL成功
查看MySQL的状态和停止MySQL
service mysqld status
service mysqld stop
修改MySQL的登录密码
进入skip-grant-tables模式
mysqld_safe --skip-grant-tables
修改root用户密码并刷新权限
use mysql;
update user set password=password("test123") where user="root";
flush privileges;
重新启动MySQL并登录,使用新密码登录成功
远程访问赋权
mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问。
sql>grant all privileges on *.* to 'root'@'%' identified by 'test123' with grant option;
sql>flush privileges;
参考文章《Linux虚拟机安装MySQL数据库》开放Linux服务器对外的3306端口,进入阿里云服务器ECS的安全组配置MySQL外网访问的安全规则。
使用Navicat进行远程连接测试