windows下载mysql地址:https://dev.mysql.com/downloads/installer/ 此下载包括64位
window安装
打开下载的文件,等弹出窗口
选择类型我选择自定义
这块不懂,网上查的
ok ——> next
等待安装完成
进入配置
高级选项,可以不选
下图选择默认推荐
添加用户,加不加都行
安装完成
测试
我使用navicat连接
使用地址为localhost报错
解决方法:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
以上的 'password'为你自己安装时候的密码
我没有执行最后一步刷新权限,没出问题,如不放心可执行
换成本地ip登录
报错提示
解决方法:
登录:mysql -u root -p
执行:mysql>update user set host = '%' where user = 'root';
如果以上两个先解决ip登录问题,再解决localhost的问题的话,要把'root'@'localhost'改成'root'@'%'
安装成功
linux下载mysql地址:https://dev.mysql.com/downloads/mysql/
上述页面进行下拉到下图
此图为翻译
安装
检测系统是否自带安装 MySQL:
rpm -qa | grep mysql
如果系统有安装,那可以选择进行卸载:
rpm -e mysql // 普通删除模式
rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
linux解压下载好的文件 适合gz文件
指令:tar -zxvf mysql-8.0.13.tar.gz
linux解压下载好的文件 适合xz文件
tar xvf mysql-8.0.13.tar.xz 执行完成生成.tar文件
给文件重命名(个人爱好)
指令:mv mysql-8.0.13 mysql
删除文件(个人爱好)
指令:rm -rf mysql-8.0.13.tar.gz
创建data数据库文件目录,位置自选
指令:mkdir data/mysql
创建mysql的用户组
指令:groupadd mysql
创建mysql的用户
指令: useradd mysql -g mysql
进入到mysql文件下
改变目录属有者 注意后面有个点
指令:chown -R mysql .
指令:chgrp -R mysql .
指令:chown -R mysql /data/mysql
指令:chgrp -R mysql /data/mysql
安装libaio依赖包,
查询是否暗转libaio依赖包
指令:yum search libaio
如果没安装,可以用下面命令安装
指令:yum install libaio
初始化mysql命令
cd mysql/bin
指令:./mysqld --initialize --user=mysql --basedir=/usr/src/java/mysql/ --datadir=/usr/src/java/data/mysql/
在执行上面命令时特别要注意下面内容
[Note] A
temporary
password
is
generated
for
root@localhost: o*s#gqh)F4Ck
root@localhost: 后面跟的是mysql数据库登录的临时密码,各人安装生成的临时密码不一样
如果mysql5.x初始化出现几个error但是临时密码出来的话应该是可以继续
如下错误,去data/mysql 里面看看有没有一个.index文件 有的话删了
[Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2018-12-05T14:26:12.912603Z 0 [System] [MY-013169] [Server] /usr/java/mysql/bin/mysqld (mysqld 8.0.13) initializing of server in progress as process 8833
2018-12-05T14:26:12.914331Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
2018-12-05T14:26:12.914370Z 0 [ERROR] [MY-013236] [Server] Newly created data directory /data/mysql/ is unusable. You can safely remove it.
2018-12-05T14:26:12.914379Z 0 [ERROR] [MY-010119] [Server] Aborting
我没有报错,没用到如下内容
如果初始化时报错如下:
error while loading shared libraries: libnuma.so.1: cannot open shared objec
是因为libnuma安装的是32位,我们这里需要64位的,执行下面语句就可以解决
#yum install numactl.x86_64
执行完后重新初始化mysql命令
修改系统配置文件
指令:cd mysql/support-files
指令: cp mysql.server /etc/init.d/mysql
指令: vi /etc/init.d/mysql
修改以下内容:
修改前
修改后
启动mysql
指令:/etc/init.d/mysql start
mysql:5.7 启动出现的问题
mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
我们这样解决
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb/
初始化完成之后记得修改以下my.cnf文件
vi /etc/my.cnf
把datadir 改成你的data路径 socket路径改成你的mysql路径 在加上一层/mysql.sock
如果出现以上错误
原因可能:mysql5.7.21不需要my.cnf文件,所以需要检查/etc目录下是否存在my.cnf文件,若存在需删除,否则启动服务会报错
登陆
指令: mysql -u root -p
--如果出现:-bash: mysql: command not found
--就执行: ln -s /usr/local/mysql/bin/mysql /usr/bin --没有出现就不用执行 红色路径为你自己路径
输入生成的临时密码
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
这是可以由于系统默认的文件位置和文件位置不一致,解决办法找到文件创建软链接
find / -name mysql.sock
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
修改密码
mysql> set password=password('123456'); 在centos7 不好用
mysql8.x使用如下
ALTER USER "root"@"localhost" IDENTIFIED BY "你的新密码"; 这里尽量不要复制,容易乱码出错
设置root账户的host地址(修改了才可以远程连接)
指令:mysql> use mysql; 选择一下表,不然报错
指令:mysql>update user set host = '%' where user = 'root';
指令:mysql>flush privileges;
查看表
指令:mysql> use mysql;
指令:mysql> select host,user from user;
效果如下
防火墙配置的话我是直接关闭
防火墙关闭:https://blog.csdn.net/qq_39900178/article/details/84228428
firewall-cmd --zone=public --add-port=3306/tcp --permanent
service firewalld restart
以上是防火墙放行端口操作
进行navicat远程测试
解决方法:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
以上的 'password'为你自己安装时候的密码
我没有执行最后一步刷新权限,没出问题,如不放心可执行
报错提示
解决方法:
登录:mysql -u root -p
执行:mysql>update user set host = '%' where user = 'root';
如果以上两个先解决ip登录问题,再解决localhost的问题的话,要把'root'@'localhost'改成'root'@'%'
添加系统路径
指令: vim /etc/profile
添加:
export PATH=/usr/src/java/mysql/bin:$PATH 也可以把路径直接追加到path后面
刷新
指令:source /etc/profile
配置mysql自动启动
指令: chmod 755 /etc/init.d/mysql
指令: chkconfig --add mysql
指令: chkconfig --level 345 mysql on
安装完成
参考链接:https://www.cnblogs.com/ggwudivs/p/8875799.html?tdsourcetag=s_pctim_aiomsg