安装
1. 下载(zip方式)
https://dev.mysql.com/downloads/mysql/5.5.html#downloads
wget 下载
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.32-winx64.zip
2. 解压后配置环境变量
添加mysql安装后的bin文件目录到环境变量Path中
3. 编辑配置文件
在mysql文件夹下创建my.ini配置文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir = D:\\mysql\\mysql-8.0.17-winx64
# 设置mysql数据库的数据的存放目录
datadir = D:\\mysql\\mysql-8.0.17-winx64\\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 创建模式
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
AI 代码解读
4. 安装并初始化数据库
以管理员身份打开cmd命令提示窗口,进入mysql文件夹下的bin目录,
安装数据库(重置数据库不必重新安装)
运行指令:mysqld --install
是用于将 MySQL 安装为 Windows 系统服务的命令。使用该命令可以将 MySQL 安装为系统服务,并设置自动启动、手动启动或禁用等选项。在安装完 MySQL 后,可以通过 Windows 的“服务”管理器来启动、停止和配置 MySQL 服务。
初始化数据库(重置数据库也可以用这个指令)
运行指令:mysqld --initialize
是用于初始化 MySQL 数据库的命令,它会创建系统表和数据目录,并在数据目录中生成初始密码。一般在第一次安装 MySQL 时使用该命令,它会为 MySQL 创建一个新的 root 账号,并生成一个随机密码,可以通过查询错误日志文件找到该密码。
5. 获取初始化数据库的root密码
初始化数据库后可以在data文件夹下找到“用户名.err”文件打开,搜索password找到这句话
“ A temporary password is generated for root@localhost: libFGw-hg1hu”
6. 启动mysql
以管理员身份打开cmd命令提示窗口,运行指令:net start mysql
这将启动mysql服务,如果找不到服务,有可能mysql安装失败了,可以 重复试试,如果还不行就只能手动添加注册表了。
使用root账户登录:mysql -uroot -p密码
7. 修改mysql的root账号密码
登录进入mysql后,运行如下指令
alter user 'root'@'localhost' identified with mysql_native_password by ' 新密码 ';
配置文件
[client] #password = your_password # 客户端配置段,设置数据库客户端连接参数 port = 3306 # MySQL服务器监听的端口号 socket = /tmp/mysql.sock # MySQL服务器使用的Unix套接字文件路径 [mysqld] lower_case_table_names = 1 # 表名大小写敏感性设置,1表示不区分大小写 binlog_cache_size = 32K # 二进制日志缓存大小 thread_stack = 256K # 线程栈大小 join_buffer_size = 256K # JOIN操作使用的缓冲区大小 query_cache_type = 0 # 查询缓存类型,0表示禁用查询缓存 max_heap_table_size = 32M # 内存临时表的最大大小 port = 3306 # MySQL服务器监听的端口号 socket = /tmp/mysql.sock # MySQL服务器使用的Unix套接字文件路径 datadir = /www/server/data # 数据库文件存储目录 default_storage_engine = InnoDB # 默认存储引擎为InnoDB performance_schema_max_table_instances = 400 # 性能模式下的最大表实例数 table_definition_cache = 400 # 表定义缓存大小 skip-external-locking # 跳过外部锁定,默认值为注释掉 key_buffer_size = 32M # MyISAM存储引擎的索引缓冲区大小 max_allowed_packet = 100G # 最大允许的数据包大小 table_open_cache = 128 # 缓存打开表的数量 sort_buffer_size = 768K # 排序操作使用的缓冲区大小 net_buffer_length = 4K # 网络缓冲区长度 read_buffer_size = 768K # 读取操作使用的缓冲区大小 read_rnd_buffer_size = 256K # 随机读取操作使用的缓冲区大小 myisam_sort_buffer_size = 8M # MyISAM索引排序缓冲区大小 thread_cache_size = 16 # 线程缓存大小 query_cache_size = 0M # 查询缓存大小,0表示禁用查询缓存 tmp_table_size = 32M # 内存临时表的大小 sql-mode = NO_ENGINE_SUBSTITUTION, STRICT_TRANS_TABLES # SQL模式设置,禁用引擎替代和严格事务表模式 explicit_defaults_for_timestamp = true # 显示默认值为TIMESTAMP类型的列 max_connections = 500 # 最大并发连接数 max_connect_errors = 100 # 允许的最大连接错误数 open_files_limit = 65535 # 打开文件的最大数量限制 log-bin = mysql-bin # 启用二进制日志,指定二进制日志文件名称前缀 binlog_format = mixed # 二进制日志格式设置为混合格式 server-id = 1 # MySQL服务器的唯一ID expire_logs_days = 10 # 自动删除日志文件的天数 slow_query_log = 1 # 启用慢查询日志 slow-query-log-file = /www/server/data/mysql-slow.log # 慢查询日志文件路径 long_query_time = 3 # 查询执行时间超过该值的语句将被记录到慢查询日志 innodb_data_home_dir = /www/server/data # InnoDB数据文件目录 innodb_data_file_path = ibdata1:10M:autoextend # InnoDB数据文件路径、大小和自动扩展设置 innodb_large_prefix = 1 # 支持大前缀索引 innodb_file_format = BARRACUDA # InnoDB的文件格式设置为Barracuda innodb_log_group_home_dir = /www/server/data # InnoDB日志文件组目录 innodb_buffer_pool_size = 256M # InnoDB缓冲池大小 innodb_log_file_size = 64M # InnoDB日志文件大小 innodb_log_buffer_size = 16M # InnoDB日志缓冲区大小 innodb_flush_log_at_trx_commit = 1 # 每次事务提交时刷新日志 innodb_lock_wait_timeout = 50 # InnoDB锁等待超时时间 innodb_max_dirty_pages_pct = 90 # 脏页最大占用缓冲池的百分比 innodb_read_io_threads = 2 # InnoDB读取IO线程数 innodb_write_io_threads = 2 # InnoDB写入IO线程数 [mysqldump] quick max_allowed_packet = 500M # mysqldump命令的快速导出配置,设置最大数据包大小 [mysql] no-auto-rehash # MySQL客户端禁用自动重新哈希 [myisamchk] key_buffer_size = 32M # MyISAM索引缓冲区大小 sort_buffer_size = 768K # MyISAM排序操作使用的缓冲区大小 read_buffer = 2M # MyISAM读取操作使用的缓冲区大小 write_buffer = 2M # MyISAM写入操作使用的缓冲区大小 [mysqlhotcopy] interactive-timeout # mysqlhotcopy命令的交互超时时间
AI 代码解读