Linux压缩包方式安装Mysql
1.选择mysql安装目录(mysql安装在/usr/local/mysql目录里面)
mkdir mysql
2.本地下载mysql压缩包
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
3.删除linux的mysql(建议不要使用删除)
1)使用以下命令查看当前安装mysql情况,查找以前是否装有mysql
rpm -qa|grep -i mysql
2)停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名
3)查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql
rm -rf ../mysql
注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
rm -rf /etc/my.cnf
4)再次查找机器是否安装mysql
rpm -qa|grep -i mysql
4.将本地mysql压缩包上传到服务器/home目录中
1.cd /home
2.rz(上传文件命令)
5.解压mysql压缩包
tar -zxvf (mysql压缩包名称) -C /usr/local/mysql
6.创建data目录
mkdir /usr/local/mysql/data
7.创建mysql用户和修改权限
groupadd mysql
chown -R mysql.mysql /usr/local/mysql/
8.初始化数据
[root@localhost mysql] ./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
9.将mysql中/support-files/mysql.server/复制到 /etc/init.d/mysqld
cp -a ./support-files/mysql.server /etc/init.d/mysqld
10.启动mysql
service mysqld start
11.检查mysql是否启动成功
service mysqld status
MySQL running (47434) 表示启动成功
问题:linux下,在mysql正常运行的情况下,输入mysql提示:
mysql command not found
遇上-bash: mysql: command not found的情况别着急,这个是因为/usr/local/bin目录下缺失mysql导致,只需要一下方法建立软链接,即可以解决:
把mysql安装目录,比如/usr/local/mysql/bin/mysql,映射到/usr/local/bin目录下:
cd /usr/local/bin
ln -fs /usr/local/mysql/bin/mysql mysql
问题:在使用删除后,将linux /etc/my.cof 文件删除导致“ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)” 报错
解决方法:本地新建my.cnf文件将下面代码复制到my.cnf文件中并传入服务器的/etc/目录中
[client]
#password= 123456
port= 3306
socket= /tmp/mysql.sock
default-character-set=utf8
#Here follows entries for some specific programs
#The MySQL server
[mysqld]
skip-name-resolve
skip-grant-tables
port= 3306
socket= /tmp/mysql.sock
datadir= /usr/local/mysql/data
character-set-server=utf8
collation-server=utf8_general_ci
skip-external-locking
key_buffer_size = 8M
max_allowed_packet = 16M
table_open_cache = 2048
#table_definition_cache= 256
sort_buffer_size = 8M
#log-bin=/home/mysql/data/mysql-bin
net_buffer_length = 32K
read_buffer_size = 2M
read_rnd_buffer_size = 16M
myisam_sort_buffer_size = 4M
binlog_format=mixed
server-id = 1
event_scheduler=ON
back_log = 50
wait_timeout = 1800
interactive-timeout = 1800
#最大连接数
max_connections = 1000
max_connect_errors = 10
binlog_cache_size = 1M
max_heap_table_size = 96M
join_buffer_size = 8M
thread_cache_size = 8
#thread_concurrency = 8
query_cache_size = 64M
query_cache_limit = 2M
memlock
default-storage-engine = INNODB
thread_stack = 192K
tmp_table_size = 96M
log_short_format
key_buffer_size = 16M
bulk_insert_buffer_size = 8M
myisam_sort_buffer_size = 32M
binlog-do-db=chinaventure
expire_logs_days=5
log_bin_trust_function_creators = 1
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
expire_logs_days=5
log_bin_trust_function_creators = 1
#innodb_data_file_path=ibdata1:128M;ibdata2:10M:autoextend
innodb_file_per_table=128M
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
#Remove the next comment character if you are not familiar with SQL
#safe-updates
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
skip-name-resolve
**注意:如果mysql解压目录不在/usr/local/mysql,则需要修改mysql.server文件的basedir和datadir等路径**