为了做服务迁移,mysql的安装总是不那么顺利, 教程很多, 但都不能够一蹴而就, 所以,单独总结一篇, 参考这篇文章,你可以很顺利的在linux系统上安装mysql数据库。
操作系统: ubantu 16.4
mysql8.0安装教程:https://blog.csdn.net/weixin_43350051/article/details/104732518
1、下载安装包
下载地址,版本:5.6.33,通用版,linux下64位
也可以通过命令下载:
$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
2、解压
     在压缩包的目录下执行$:tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
     创建目录$:mkdir /usr/local/mysql
     复制解压后的mysql目录$:cp -r mysql-5.6.33-linux-glibc2.5-x86_64/* /usr/local/mysql (文件比较多,复制需要一点时间,耐心等待完成)
3、添加用户组
     添加组$:groupadd mysql
     添加用户mysql 到用户组mysql$:useradd -g mysql mysql
4、安装mysql
     进入目录$:cd /usr/local/mysql/
     创建目录$:mkdir ./data/mysql
 
 
 
 
 
 
     授权$:chown -R mysql:mysql ./
     执行命令$:./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql  (不知道为什么,有时候可能需要重启一下服务才能够执行)
    (ps: 如果报这个错误:Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
 Ubuntu下执行$:apt-get install libaio1 libaio-dev  和 apt-get -y install autoconf(centOs下执行:yum -y install autoconf)后,再执行上一步命令 )
     复制命令$:cp support-files/mysql.server /etc/init.d/mysqld
     授权$:chmod 755 /etc/init.d/mysqld
     复制配置文件$:cp support-files/my-default.cnf /etc/my.cnf
5、修改启动脚本
     编辑文件$:vi /etc/init.d/mysqld
     找到下边两个key, 修改文件里的内容:
 basedir=/usr/local/mysql/
 datadir=/usr/local/mysql/data/mysql6、加入环境变量
    编辑文件$:vim /etc/profile,这样可以在任何地方用mysql命令了。
    在文件的最后一行添加一下代码:
export PATH=$PATH:/usr/local/mysql/bin    生效命令$:source /etc/profile
7、启动服务
    进入目录$:cd /usr/local/mysql 后
    执行命令$: service mysqld start  (注意:这个时候可能是无法启动的,请重启服务$:reboot [-n] )
8、测试连接
    进入目录$:cd /usr/local/mysql 后
    执行命令$: ./bin/mysql -uroot -p ,默认密码是空,可以直接进入
    启动mysql
    $ service mysqld start
    关闭mysql
    $ service mysqld stop
    查看运行状态
    $ service mysqld status
mysql操作相关:
mysql 数据安装好了,默认是可以无密码登录的 进入目录 /usr/local/mysql 后,
$ ./bin/mysql -uroot
Q0: 如何登录并进入mysql命令行?
正常情况下,你的mysql配置好了,进入的命名执行$:  msyql -uroot -p  然后输入密码就可以了
但是,你的mysql可能没有配置好,所以mysql的命令找不到,那么你依然可以换种方式进入,先进入安装目录 /usr/local/mysql
在安装目录下执行命令 ./bin/mysql -uroot -p ,然后输入密码即可
Q1: 无法远程连接阿里云安装的mysql?
# 由于mysql默认不允许外网访问,所以,需要创建一个允许外网连接的用户 
mysql> grant all on *.* to admin@'%' identified by '123456' with grant option; 
mysql> flush privileges;
mysql> flush privileges;
Q2: mysql 无法远程连接?
# 支持root用户允许远程连接mysql数据库 (同时也可以创建用户名)
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql> flush privileges;
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql> flush privileges;
Q3: mysql 无法远程连接?
# 支持root用户允许远程连接mysql数据库 (同时也可以创建用户名)
mysql> use mysql;
mysql> use mysql;
mysql>
mysql> flush privileges;
update user set host = '%' where user = 'root';mysql> flush privileges;
Q4: mysql全都配置好了,还是无法连接阿里云的mysql
极大的可能是没有配置阿里云服务器的安全规则,增加一个配置,入方向,端口号为3306的安全规则, 这样, 就可以远程连接阿里云服务器的mysql数据库了。
 
 
                            