没什么好说的,直接正面刚吧。
安装mysql数据库
a)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
如果centos6.6安装 :wget http://dev.mysql.com/get/mysql57-community-release-el6-5.noarch.rpm
b)安装mysql源:yum localinstall mysql57-community-release-el7-8.noarch.rpm
若结尾出现complete!,则说明MySQL源安装完成
c)检测是否安装完成:yum repolist enabled | grep "mysql.*-community.*"
d)安装mysql:yum install mysql-community-server
若结尾出现Complete!, 则MySQL安装完成
e)设置开启启动mysql服务:systemctl enable mysqld
f)查看安装的mysql版本:rpm -aq | grep -i mysql
g)启动MySQL服务:systemctl restart mysqld
h)查看MySQL初始密码:grep 'A temporary password' /var/log/mysqld.log
i)更改MySQL密码:mysqladmin -u root -p'旧密码' password '新密码'
这里更改密码出了问题,更改失败,这是因为密码太过简单的原因。有两个接解决方法:
方法一:把密码设置复杂点(这是最直接的方法)
方法二:关闭mysql密码强度验证(validate_password)
编辑配置文件:vim /etc/my.cnf, 增加这么一行validate_password=off
编辑后重启mysql服务:systemctl restart mysqld
j)设置mysql能够远程访问:
登录进MySQL:mysql -uroot -p密码
增加一个用户给予访问权限:grant all privileges on *.* to 'root'@'ip地址' identified by '密码' with grant option; //可将ip改为%%,表示开启所有的
OK,我本地连接试下。
好了,到这里就结束了,祝大家别出BUG。
最近有安装了一遍,在修改密码的时候出现了这样的报错。
提示,需要更新随机密码。
更新密码:
mysql> set password=password('12345qwe');
Query OK, 0 rows affected, 1 warning (0.00 sec)
更新完成后就可以愉快的授权和修改了。
补充一点东西::
一, 创建用户:
命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二,授权:
命令:GRANT privileges ON databasename.tablename TO 'username'@'host'
说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.
例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
分享一下SSH连接数据库的方法:
直接上截图吧:
shh
附mysql的配置文件
tmp_table_size = 1024M
max_heap_table_size = 1024M
max_connections = 1500
max_connect_errors = 1000000
join_buffer_size = 128M
max_allowed_packet = 64M
interactive_timeout = 1200
wait_timeout = 600
read_buffer_size = 16M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
innodb_buffer_pool_size = 2G
innodb_log_buffer_size=16M
innodb_log_file_size=1G
innodb_log_files_in_group=2
innodb_max_dirty_pages_pct=75
innodb_buffer_pool_dump_pct=75
innodb_lock_wait_timeout=50
innodb_flush_method = O_DIRECT
query_cache_size =64M
table_open_cache = 5000
table_definition_cache = 5000
thread_cache_size = 512
slow-query-log=1
binlog_cache_size=2M
open_files_limit = 65535
bulk_insert_buffer_size = 512M
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
character-set-server=utf8
lower_case_table_names=1
default_password_lifetime=0
可能会遇到的问题
解决方法
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022