mysql5.7在centos上安装的完整教程
作者:网络转载 发布时间:[ 2016/11/27 10:23:15 ] 推荐标签:数据库 MySQL
安装前的准备
Step1: 如果你系统已经有mysql,如一般centos自带mysql5.1系列,那么你需要删除它,先检查一下系统是否自带mysql
yum list installed | grep mysql
Step2: 删除系统自带的mysql及其依赖命令
yum -y remove mysql-libs.x86_64
Step3: 给CentOS添加rpm源,并且选择较新的源命令
wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
yum localinstall mysql-community-release-el6-5.noarch.rpm
yum repolist all | grep mysql
yum-config-manager --disable mysql55-community
yum-config-manager --disable mysql56-community
yum-config-manager --enable mysql57-community-dmr
yum repolist enabled | grep mysql
开始安装Step4:安装mysql 服务器命令
yum install mysql-community-server
Step5: 启动mysql命令
service mysqld start
Step6: 查看mysql是否自启动,并且设置开启自启动命令
chkconfig --list | grep mysqld
chkconfig mysqld on
mysql5.7安装完后如何开启远程root包括远程用户权限
mysql5.7对于安全模块进行了升级,因此如果你想像以前那样在安装完mysql后直接以mysql -u root登录进去再通过一系列的sql命令来更改权限但是这在mysql5.7上是行不通的,按照以前的做法,你会在面临mysql5.7碰到这样的一个报错“access denied for user root@localhost” ,因此请按照以下使用说明操作。
Step1: 停止mysqld服务并使用mysqld safe启动
service mysqld stop
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
RHEL7.0系列的发行版(例如CentOs 7),特征是使用了systemd来代替原有的init,作为第一支启动的程序。此时网络上面所说的mysqld_secure已经不可使用。但是查看官方文档后,得知在这种情况下mysqld可以支持部分mysqld_safe的参数,命令如下:
mysqld --user=mysql --skip-grant-tables --skip-networking &
Step2:登录mysql
此时,你在mysql服务器上使用
mysql -uroot -p
可以登录mysql了
Step3: 更改mysql安全密码
先?一下原因,mysql5.7出现这样的问题,是因为MYSQL5.6之后,加强了对安全性的管控,认为root用户进行mysql操作是一种危险的行为,于是限制了root用户登录mysql()。但是我们可以通过修改Mysql中user表的方法解决该问题
(网络上还有一种做法是查看/var/log/mysql.log,该文件内有安装后Mysql生成的随机密码,然后用文件里的密码正常登录即可,有兴趣者自己可以试下,此处使用正规操作步骤)
mysql> SET PASSWORD = PASSWORD('ur password here');
如果出现以下信息:
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
请先运行
update mysql.user set authentication_string=password('newpassword') where user='root'
Step4:更改mysql root的密码(和Step3中保持一致)
update mysql.user set authentication_string=password('newpassword') where user='root'
之前的mysql版本为:
UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
flush privileges;
而mysql5.7已经把PASSWORD字段改名成了"authentication_string"这个名字了,此处需要注意了。
Step5:建立可供远程连接的root用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'ur password here' WITH GRANT OPTION;
Step6:在远程装个mysql workbench然后用远程root登录,爱干吗干吗吧
MYSQL核心配置文件示例
虚拟CPU 6C
内存:6GB
优化过的配置如下:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 6M
read_rnd_buffer_size = 4M
#deprecate this option after mysql5.5 default-character-set = utf8
character-set-server=utf8
open_files_limit = 10240
back_log = 384
max_connections = 500
#deprecate this option after mysql5.5 table_cache = 512K
max_allowed_packet =16M
query_cache_size = 384M
table_open_cache = 512
key_buffer_size = 384M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
slow_query_log_file = /var/log/mysqld-slow-query.log
log-short-format
long-query-time = 3
#log-long-format
#log-slow-admin-statements
log-queries-not-using-indexes
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11