yum系列
-
官方安装说明网站 使用MySQL Yum存储库的快速指南
- 注意版本 5.7 和 8.0
- 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Lguilin@123';
Navicat 无法连接mysql8.0
待补充-
可解决navicat连接mysql时报1130错误
其实是MySQL没法远程连接的安全机制# 修改user表中root的权限 update user set host = '%' where user ='root'; # 查看 select user,host from user; # 立即生效 flush privileges;Mac
Mac
因为Mac系统自带PHP和apache,但是没有自带mysql
MySQL官网下载https://dev.mysql.com/downloads/
- 载完成后,点击安装,一路确认,等待安装成功。
注意:原来5.7的版本不会再给root用户分配默认密码,而是会给一个临时密码,如果你细心的话,安装mysql成功后会弹出一个临时密码让你保存。如果你没有保存,没关系,右侧的通知栏里会有。
- 进入系统偏好设置,最下边一行,找到mysql打开,点击"Start MySQL Server",启动mysql
- 命令行运行
在应用程序中找到 terminal 打开,首先运行下面两条命令:
(最好将别名放到 .bash_profile 中,因为关闭)
alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
# 这两条命令是为了方便直接打开 iTerm 就可以运行mysql命令,而不是必须进入mysql安装目录才能运行。接下来,你要做的是重置密码
有一个不严谨的文章可以参考(强烈建议到官网上看安装说明,比较简单清晰的):https://www.jb51.net/article/103841.htm
Windows系统
下载地址: http://dev.mysql.com/downloads/mysql
解压,控制台定位到当前目录,或者将目录的bin 配置到环境变量
键入初始化命令:
mysqld --initialize
此时会生成相应的目录,里面会生成一个 data 目录
[图片上传失败...(image-27919f-1609493737149)]
如果缺少了data 目录 就会 启动不了mysql服务
MySQL服务正在启动
MySQL服务无法启动
服务没有报告任何错误
请键入 NET HELPMSG 3534 以获得更多的帮助
使用下面命令可以答应错误信息
mysqld --console
eg:(Table 'mysql.plugin' doesn"t exist)
- 然后就是安装:
mysqld --install
- 配置
有一个 my-default.ini 是配置文件,复制一份 命名为 my.ini 里面的东西都比较简单,配置什么的都不讲了
- 密码
在5.6之后 安装的密码都不为空了 会在安装的时候生成一个Random String
找一找data目录下有没有日志文件,err 结尾的
[图片上传失败...(image-425995-1609493737149)]这个就是随机密码:
[图片上传失败...(image-95ca05-1609493737149)]
- 设置新密码
# 设置新密码 set password = password('root'); # 让密码永不过期 alter user 'root'@'localhost' password expire never; # 结束,立即生效 flush privileges;
Ubuntu&Deban 系统安装
所有的安装都不要去看那些没用的第三方文档。都到官网去查看官方文档。
这里需要强调的是,不要使用系统源来的apt源来安装mysql-server 里面坑多得一批,主要原因是和官方文档里面说的不一样,异常更加的复杂
APT 系列的系统安装地址:https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-fresh-install
基本分为一下几个步骤:
-
Adding the MySQL APT Repository
shell> sudo dpkg -i */PATH/version-specific-package-name*.deb # 例如:shell> sudo dpkg -i mysql-apt-config_0.8.14-1_all.deb
这里可以通过apt 的搜索功能来查看源的安装情况
eg: sudo apt search mysql
-
Installing MySQL with APT
shell> sudo apt-get install mysql-server
然后就是一路往下走就是了。如果是可视化界面操作的会提示输入密码,否则就使用官方的其他办法来修改密码吧。
问题相关
- apt安装未提示输入密码
打开配置文件:sudo vim /etc/mysql/debian.cnf
在这个文件里面有着MySQL默认的用户名和用户密码
最最重要的是:用户名默认的不是root,而是debian-sys-maint,如下所示:
新的已经没有这种了,5.7的版本有
Automatically generated for Debian scripts. DO NOT TOUCH![client]host = localhostuser = debian-sys-maintpassword = hGu99nJgoWcmCDKTsocket = /var/run/mysqld/mysqld.sock[mysql_upgrade]host = localhostuser = debian-sys-maintpassword = hGu99nJgoWcmCDKTsocket = /var/run/mysqld/mysqld.sockbasedir = /usr
可以拿这个里面的账号和密码登录
mysql -u debian-sys-maint -p hGu99nJgoWcmCDKT
然后终端会提示你输入密码
Enter password:
这是输入文件中的密码即可成功登陆。登录完成之后进行修改密码
5.7的password字段已经被删除,取而代之的是authentication_string字段,所以要更改密码:
mysql> update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost'; # 如果显示: Query OK, 1 row affected, 1 warning (0.00sec)Rows matched: 1 Changed: 1 Warnings: 1 # 则代表成功修改,之后需要重启 MySQL,方可登录成功。
- 远程登录
# 先使用本地登录
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
+------+-----------+
| User | host |
+------+-----------+
| root | % |
| root | localhost |
+------+-----------+
mysql> FLUSH PRIVILEGES;
mysql> exit;
# 重启服务
彻底删除的方法
sudo apt-get autoremove --purge mysql-serve*
# 上面的可能会有些是多余的,之后需要清理残余数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
很讨厌的是有时候删除注意配置文件没有别删除干净,需要到网上另外找一些办法
引文
sudo apt-get install mysql-server
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev
安装过程中会提示设置密码什么的,注意设置了不要忘了.
- 安装完成之后可以使用如下命令来检查是否安装成功:
sudo netstat -tap | grep mysql
通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。
- 登陆mysql数据库可以通过如下命令:mysql -u root -p
-u 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。
MySQL Windows安装过程
MySQL下载地址 https://dev.mysql.com/downloads/mysql/
网站需要先登陆才能下载的,密码是要求有大写字母的
解压 ZIP包
-
配置环境变量
C:\Program Files\MySQL\MySQL Server 5.6\bin
1、刚解压的时候是没有data 目录的
初始化
mysqld --initialize
或者
mysqld --initialize-insecure
或者
mysqld --initialize-insecure --user=mysql
此时就生成了临时密码 在 生成的data 目录下 文件格式是 电脑名.err
A temporary password is generated for root@localhost: v:gNXSw5FTkw
- 安装
mysqld -install
(如果安装失败 使用 mysqld -remove 移除服务 重新安装 install)
# 启动服务
net start mysql
# 停止服务
net stop mysql
#登陆
mysql -u root -p
root是用户名,如果没有特别定义的话就是这个
如果提示密码过期了或者怎么都错误的话
mysqladmin -u root -p password
Enter password:*******
New password:*******
Confirm new password:*******
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.